ASP.net .FindControl () i GridView zwracają wartość null

Przejrzałem strony na tej stronie, ale nie wydaje mi się, aby znalazłem coś wystarczająco ogólnego dla mojego problemu, więc miałem nadzieję, że ktoś wie, co robić. Debuguję jakiś kod napisany przez kogoś innego i mam problemy z instrukcją GridView.

Moim problemem jest to, że mój gridview jest zawsze pusty. Mam zadeklarowany GridView w panelu, który jest w LoginView, który jest zasadniczo skonfigurowany jak poniżej.

<asp:LoginView ID="LoginView1" runat="server" onviewchanged="LoginView1_ViewChanged">
<AnonymousTemplate>&nbsp;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">

Następnie w pliku C # mam następującą instrukcję

   GridView GridView1 = (GridView)LoginView1.FindControl("GridView1");

Gdy idę uruchomić kod, otrzymuję NullRefrenceException w GridView1. Czy muszę przekopać się w panelu, aby odwołać GridView, czy powinienem mieć dostęp do niego z głównego segmentu LoginView1?

Edytuj: Zmieniono mój fragment kodu, aby dołączyć informacje do Anonimowego szablonu

questionAnswers(2)

yourAnswerToTheQuestion