C #, FindControl

8

Es tut mir leid, aber ich kann nicht verstehen, warum das nicht funktioniert. Nach dem Kompilieren bekomme ich eine "Null Reference Exception". Bitte helfen.

%Vor%

und UI:

%Vor%     
AlexC 22.09.2009, 00:27
quelle

3 Antworten

3

Wenn Label1 auf der Masterseite vorhanden ist:

Wie wäre es mit der Angabe der Inhaltsseite, auf der sich Ihre Masterseite befindet?

%Vor%

Dann machen Sie eine Methode im Master wie

%Vor%

Und rufe es im Seitencode hinterher.

%Vor%

Wenn Label1 auf der Inhaltsseite vorhanden ist

Wenn es sich einfach auf derselben Seite befindet, rufen Sie einfach Label1.Text = someString; oder wenn Sie aus irgendeinem Grund FindControl verwenden müssen, ändern Sie Ihr Master.FindControl zu FindControl

    
CRice 22.09.2009 00:38
quelle
2

FindControl sucht nur in den unmittelbaren Kindern (technisch zum nächsten NamingContainer ), nicht der gesamte Kontrollbaum. Da Label1 kein direktes Kind von Master ist, wird Master.FindControl es nicht finden. Stattdessen müssen Sie entweder FindControl für das direkte übergeordnete Steuerelement eingeben oder eine rekursive Steuersuche ausführen:

%Vor%

(Hinweis: Dies ist praktisch als Erweiterungsmethode ).

    
Rex M 22.09.2009 00:32
quelle

Tags und Links