Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/336.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/37.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ssh/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何在子中继器的ItemCommand事件中获取当前中继器_C#_Asp.net_Nested Repeater - Fatal编程技术网

C# 如何在子中继器的ItemCommand事件中获取当前中继器

C# 如何在子中继器的ItemCommand事件中获取当前中继器,c#,asp.net,nested-repeater,C#,Asp.net,Nested Repeater,这是HTML代码: <asp:Repeater ID="Repeater1" runat="server" OnItemDataBound="Repeater1_ItemDataBound"> <ItemTemplate> <h1>Repeater 1</h1> <asp:Repeater ID="Repeater2" runat="server" OnItemDataBound="Re

这是HTML代码:

    <asp:Repeater ID="Repeater1" runat="server"
    OnItemDataBound="Repeater1_ItemDataBound">
    <ItemTemplate>
        <h1>Repeater 1</h1>
        <asp:Repeater ID="Repeater2" runat="server" OnItemDataBound="Repeater2_ItemDataBound">
            <ItemTemplate>
                <h1>Repeater 2</h1>
               <asp:LinkButton CommandArgument='<%#Container.ItemIndex%>' CommandName="cmdDeleteItem" ID="lnkDelete" runat="server" >Delete</asp:LinkButton>
            </ItemTemplate>
        </asp:Repeater>
    </ItemTemplate>
</asp:Repeater>

Repeater2\u ItemCommand事件可能是无法找到自身的Repeater(Repeater2)

您不能使用
FindControl
方法。在这种情况下,应将源参数强制转换为
Repeater
,如下所示:

var Repeater2 = (Repeater)source;

然后,您可以访问中继器的所有属性,该中继器的
item\u命令
事件被触发。

Repeater2\u ItemCommand
未连接到aspx代码中的中继器2。你调试代码了吗?您是否能够在
Repeater2\u ItemCommand
中找到断点?并且不确定事件处理程序的逻辑意义是什么。您正在尝试将repeater的项目作为ArrayList获取,然后将count添加到该列表中,然后再次将该ArrayList绑定到repeater,并且在单击delete按钮时也是如此。这里我遗漏了什么?它打断了一行:var list=newarraylist(Repeater2.Items);你犯了什么错误?你明白我的第一句话了吗?您能解释一下事件处理程序的逻辑吗?“对象引用未设置为对象的实例。”当我按下子转发器中的按钮(删除按下按钮的行)时,我会绑定子转发器数据。
var Repeater2 = (Repeater)source;