C# 嵌套网格控件不可访问?空值?问题
Asp.Net代码C# 嵌套网格控件不可访问?空值?问题,c#,asp.net,gridview,nullreferenceexception,C#,Asp.net,Gridview,Nullreferenceexception,Asp.Net代码 <asp:GridView ID="gv_current_report" runat="server" CssClass="grid" BorderStyle="Solid" BorderColor="#336699" DataKeyNames="staff_id" AutoGenerateColumns="False" GridLines="None" OnRowDataBound="gv_current_report_RowDataBound"> <
<asp:GridView ID="gv_current_report" runat="server" CssClass="grid" BorderStyle="Solid" BorderColor="#336699" DataKeyNames="staff_id" AutoGenerateColumns="False" GridLines="None" OnRowDataBound="gv_current_report_RowDataBound">
<AlternatingRowStyle BackColor="#DCE4F9" />
<Columns>
<asp:TemplateField>
<ItemTemplate>
<img alt="" style="cursor: pointer" src="images/plus.png" width="30" />
<asp:Panel ID="detail_grid" runat="server" Style="display: none">
<asp:GridView ID="gv_detail" runat="server" AutoGenerateColumns="false" CssClass="child-grid">
<Columns>
<asp:BoundField ItemStyle-Width="150px" DataField="branch_name" HeaderText="Branch Name" />
<asp:BoundField ItemStyle-Width="150px" DataField="date_contacted" HeaderText="Contacted Date" />
<asp:BoundField ItemStyle-Width="150px" DataField="name" HeaderText="Staff Name" />
</Columns>
</asp:GridView>
</asp:Panel>
</ItemTemplate>
</asp:TemplateField>
问题是面板和网格视图在c#中不可访问?如果我在designer中创建控件,它是可访问的,但会抛出一个错误
对象引用未设置为对象的实例
发现网格视图控件在运行时为空
(即)gv_细节=空
任何人都请说点什么。任何帮助都将不胜感激 我已经编辑了你的标题。请看,“,其中的共识是“不,他们不应该”。很抱歉,我没有意识到这一点。感谢您不能仅凭名称访问
gv_detail
,您应该使用如下内容:var mygv_detail=e.Row.FindControl(“gv_detail”)作为GridView代码>。同样适用于面板顺便说一句。谢谢,伙计,它起作用了。你可以把它贴出来作为答案
protected void gv_current_report_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
Int32 staff_id = Convert.ToInt32(gv_current_report.DataKeys[e.Row.RowIndex].Value);
db = new ReportsDataContext();
gv_detail.DataSource = db.tracker_new_report_broker_status_change_current_detail(staff_id);
gv_detail.DataBind();
}
}