将当前项传递给函数

时间:2013-07-09 13:13:46

标签: c# .net webforms repeater

我有一个中继器:

<asp:Repeater runat="server" ID="RepeaterCategorie">
    <ItemTemplate>
        <%#((isBlocked()) ? "true" : "false") %>
    </ItemTemplate>
</asp:Repeater>         

我在.cs上调用一个函数。我想将当前项(我的意思是,当前项在数据源列表中迭代)传递给该函数。如果不通过isBlocked函数传递引用,我怎么能这样做?

1 个答案:

答案 0 :(得分:2)

<强> HTML

<asp:Repeater runat="server" ID="RepeaterCategorie"
    OnItemDataBound="RepeaterCategorie_ItemDataBound">
    <ItemTemplate>
        <asp:Label runat="server" Id="lblBool"></asp:Label>
    </ItemTemplate>
</asp:Repeater>  

<强> CS

protected void RepeaterCategorie_ItemDataBound(
    object sender, RepeaterItemEventArgs e) 
{
    if (e.Item.ItemType == ListItemType.Item || 
        e.Item.ItemType == ListItemType.AlternatingItem) 
    {
        var lblBool = (Label)e.Item.FindControl("lblBool");
        lblBool.Text = isBlocked(sender, e) ? "true" : "false";
    }
}