我已經瀏覽了網站上的頁面,但似乎找不到足以解決我的問題的東西,所以希望有人知道該怎麼做。我正在調試別人編寫的一些代碼,並且遇到了GridView語句的問題。ASP.net .FindControl()和GridView返回null
我的問題是,我的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段訪問它?
編輯:改變了我的代碼片段,包括信息的匿名模板
您是否正在使用母版頁? –
您是否在登錄時登錄?匿名模板中有什麼? – MikeSmithDev
匿名模板只是一個登錄屏幕。所有的工作都是通過loginview – user1816892