将当前项传递给函数

本文关键字:函数 | 更新日期: 2023-09-27 18:21:35

我有一个中继器:

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

其中我调用了.cs上的一个函数。我想将当前项(我的意思是,当前项在数据源列表中迭代)传递给该函数。如何在不通过isBlocked函数传递引用的情况下执行此操作?

将当前项传递给函数

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";
    }
}