C# asp.net Repeater-获取对当前项的引用

C# asp.net Repeater-获取对当前项的引用,c#,asp.net,data-binding,repeater,dataitem,C#,Asp.net,Data Binding,Repeater,Dataitem,我正在使用Asp.net 4.5,C#。 我有一个reapter,它绑定了一些数据源: <asp:Repeater ItemType="Product" ID="ProductsArea" runat="server"> <HeaderTemplate></HeaderTemplate> <ItemTemplate> ... </I

我正在使用Asp.net 4.5,C#。 我有一个reapter,它绑定了一些数据源:

  <asp:Repeater ItemType="Product" ID="ProductsArea" runat="server">
            <HeaderTemplate></HeaderTemplate>
            <ItemTemplate>
                ...  
            </ItemTemplate>
            <FooterTemplate></FooterTemplate>
        </asp:Repeater>    

...  
在这个转发器中,我希望引用当前的迭代项。 我知道我可以使用
,而且我可以使用
。如果我想进入一个字段,我可以使用
或评估它

但是我想在一个字段上设置一个条件,如何获得对#项的引用,以便执行以下操作:

<% if (#Item.field>3)%>, <%if (#Container.DataItem.field<4)%> 

3)%>,我会使用
ItemDataBound
。这使得代码更具可读性、可维护性和健壮性(编译时类型安全)


我会使用
ItemDataBound
。这使得代码更加可读、可维护和健壮(编译时类型安全)?我对此不熟悉,但这是服务器端的。我需要像这样在页面上使用它,你可以得到50%的折扣@程序员:这也是在服务器端执行的。您可以以更可读的方式获得相同的代码。但是你必须展示更多你正在尝试做的事情和涉及的控件,否则我不能给你展示一个完整的例子。我知道,但我希望它在动态页面上,而不是在函数中。如果条件对您有效,我如何打印到html?@Programer:那么您必须等待另一个答案。我不知道,也不想知道如何使用内嵌aspx实现类似的功能。这更像是经典的ASP而不是ASP.NET。
protected void Product_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
    if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
    {
        // presuming the source of the repeater is a DataTable:
        DataRowView rv = (DataRowView) e.Item.DataItem;
        string field4 = rv.Row.Field<string>(3); // presuming the type of it is string
        // ...
    }
}
<asp:Repeater OnItemDataBound="Product_ItemDataBound" ItemType="Product" ID="ProductsArea" runat="server">