为什么我的代码无法在rowcommand中访问父网格视图?

时间:2015-12-20 12:40:27

标签: c# asp.net gridview rowcommand

我有一个 ParentGridview ,其中包含面板内的 ChildGridview ,位于**ItemTemplateField**内。现在在编码中我希望得到 ParentGridview ,并且我希望通过它来访问 Panel 但无法实现。

aspx:(*不要使用语法,我只是在原始代码*的确切风格中写到这里

<asp:gridview id="ParentGv" runat="server">
 <columns>
  <asp:templatefield>
  <itemtemplate>
    <asp:panel id="childpanel" runat="server">
      <asp:gridview id="ChildGv" runat="server"  onrowcommand="ChildGv_Rowcommand">
      <columns>
        <asp:templatefield>
         <itemtemplate>
            <asp:imagebutton id="btndelete" runat="server" CommandName="cmdDelete"  CommandArgument='<%# Container.DataItemIndex %>'
         </itemtemplate>
        </asp:templatefield>         
      <columns/>
    </panel>
 </itemtemplate>
</asp:templatefield>
 </columns>

mycode的:

protected void ChildGv_RowCommand(object sender, GridViewCommandEventArgs e)
    {
        try
        {
            GridView grdviewCaseHearingsDetails = (GridView)sender;

            int index = Convert.ToInt32(e.CommandArgument);

            if (e.CommandName == "cmdDelete")
            {
                GridView ChildGv = (GridView)((ImageButton)(e.CommandSource)).Parent.Parent.Parent.Parent;
                GridView ParentGv = (GridView)(ParentGv.Parent.Parent.Parent.Parent.Parent);

                ParentGv.FindControl("childpanel").Visible = true;
        }

但是这让我在最后一行给出错误:

  

对象引用未设置为对象的实例

0 个答案:

没有答案