C# 删除中继器中的用户控件

C# 删除中继器中的用户控件,c#,asp.net,user-controls,repeater,C#,Asp.net,User Controls,Repeater,我在用户控件中有一个控件映像。我用一个转发器创建了几个图像列表 我在用户控件外有一个按钮,用于删除图像(每个图像) 我想知道,当我单击按钮删除图像时,如何引用特定行 这是最重要的一点: <asp:Repeater ID="ImageRepeater" runat="server" onitemcommand="ImageRepeater_ItemCommand"> <ItemTemplate> <div>

我在用户控件中有一个控件映像。我用一个转发器创建了几个图像列表

我在用户控件外有一个按钮,用于删除图像(每个图像)

我想知道,当我单击按钮删除图像时,如何引用特定行

这是最重要的一点:

<asp:Repeater ID="ImageRepeater" runat="server" 
    onitemcommand="ImageRepeater_ItemCommand">
    <ItemTemplate>
        <div>
            <uc1:IVT_DisplayImage ID="IVT_DisplayImage1" runat="server" ImageURL="<%# Container.DataItem %>" />
            <asp:Button ID="RemoveDiplayImage" Text="Remove" runat="server" 
            CommandName="delete" 
            />
        </div>
    </ItemTemplate>
</asp:Repeater>

我想知道,如何通过我选择的代码行(用户控件)进行识别。

您需要将
CommandArgument
添加到按钮中,如
CommandArgument=“”

这样,在代码中
e.CommandArgument
为您提供项目编号,您可以使用该编号获取所需的项目


注意:事实上,您可以使用数据源中的任何主键(唯一标识符),将其绑定到中继器,从中继器中可以直接从列表对象(数据源)获取记录,而不是将
ItemIndex
指定为
CommandArgument

对不起。以前,我的印象是GridView,并将GridViewRowIndex作为CommandArgument包含在内。更新了答案。请检查一下这个。
protected void ImageRepeater_ItemCommand(object source, RepeaterCommandEventArgs e)
{
    if (e.CommandName == "delete")
    {
        //????
    }
}