我是第一次使用 DataList
。一切正常,我可以在屏幕上看到数据。
我在项目模板中使用此代码。
<asp:DataList ID="DataList1" runat="server">
<FooterTemplate>
</FooterTemplate>
<HeaderTemplate>
</HeaderTemplate>
<ItemTemplate>
<%# DataBinder.Eval(Container.DataItem,"AA") %>
<%# DataBinder.Eval(Container.DataItem,"BB") %>
<%# DataBinder.Eval(Container.DataItem,"CC") %>
</ItemTemplate>
</asp:DataList>
这是我绑定(bind)的DataTable
DataTable dt = new DataTable();
dt.Columns.Add("AA");
dt.Columns.Add("BB");
dt.Columns.Add("CC");
dt.Rows.Add("1", "2", "3");
dt.Rows.Add("10", "20", "30");
dt.Rows.Add("100", "200", "300");
dt.Rows.Add("1000", "2000", "3000");
DataList1.DataSource = dt;
DataList1.DataBind();
DataBinder.Eval(Container.DataItem,"ColumnName")
究竟做了什么?
提前致谢
最佳答案
参数 1:Container.DataItem
指的是绑定(bind)到当前容器的 datasource
。
参数 2:应评估 DataItem
的公共(public)属性。
因此 Eval 使用反射来评估 DataItem
上的公共(public)属性。
例如:
在您的情况下,它计算 DataTable
上的 BB
列。
关于c# - 项目模板中的 <%# DataBinder.Eval(Container.DataItem ,"ColumnName") %> 究竟做了什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4813937/