我在Asp.net中使用Repeater控件。
我有一个场景,根据条件,我必须检索以前的索引属性值。
请帮助..
答案 0 :(得分:0)
如果您的数据源在数据绑定转发器时可用,您可以执行以下操作:
数据源定义只是为了展示一个例子:
protected DataTable Data
{
get
{
if (ViewState["Data"] == null)
{
DataTable table = new DataTable();
table.Columns.Add("ID", typeof(int));
table.Columns.Add("Name");
table.Columns.Add("Color");
table.Columns.Add("Weight", typeof(int));
table.Rows.Add(1, "Ball", "Red", 10);
table.Rows.Add(2, "Table", "Black", 50);
table.Rows.Add(3, "Chair", "Green", 30);
ViewState["Data"] = table;
}
return (DataTable)ViewState["Data"];
}
}
页面加载(Repeater DataBinding):
protected void Page_Load(object sender, EventArgs e)
{
rpt.DataSource = Data;
rpt.DataBind();
}
转发器代码:
<asp:Repeater ID="rpt" runat="server">
<ItemTemplate>
<%#
Condition ? Data.Rows[Container.ItemIndex - 1]["Name"] : Eval("Name")
%>
</ItemTemplate>
</asp:Repeater>
Data
引用代码隐藏的受保护属性,即DataTable。