我已经查看了网站上的页面,但似乎找不到适合我的问题的一般性内容,所以希望有人知道该怎么做。我正在调试其他人编写的一些代码,并且遇到了 GridView 语句的问题。
我的问题是我的 gridview 始终为空。我在 LoginView 中的面板中有一个声明的 GridView,它基本上设置如下。
<asp:LoginView ID="LoginView1" runat="server" onviewchanged="LoginView1_ViewChanged">
<AnonymousTemplate> Please <a href="../Default.aspx"> Log In </a></AnonymousTemplate>
<LoggedInTemplate>
<asp:Panel ID="Panel1" runat="server">
<asp:GridView ID="GridView1" runat="server"
AutoGenerateColumns="False" CellPadding="2"
DataSourceID="SqlDataSource1" ForeColor="Black" GridLines="Horizontal"
BackColor="White" BorderColor="#CCCCCC" BorderStyle="None"
BorderWidth="1px" Width="970px" OnRowCommand="GridView1_RowCommand"
PageSize="40" AllowSorting="True">
之后,在 C# 文件中,我有以下语句
GridView GridView1 = (GridView)LoginView1.FindControl("GridView1");
当我去运行代码时,我在 GridView1 上得到 NullRefrenceException。我是否需要深入到面板中以引用 GridView,或者我应该能够从主 LoginView1 段访问它?
编辑:更改了我的代码片段以包含匿名模板的信息