Ist ctl00 eine Konstante in ASP NET?

8

Ich muss auf ein Steuerelement in meiner Webanwendung verweisen, das mit einer Masterseite erstellt wurde. Der Name des Steuerelements im HTML-Code entspricht etwa "ctl00 $ MainContent $ ListBox1". Kann ich das im Code sicher tun?

%Vor%

PS. Ich kann die ClientID-Eigenschaft nicht verwenden, da dieser Code von InitializeCulture () überschrieben wird.

    
ahmd0 06.07.2011, 03:21
quelle

2 Antworten

12

Sie könnten, aber was ich tue, ist die MasterPage ID in meinem Init() :

%Vor%     
Code Maverick 06.07.2011, 03:28
quelle
2

ctl00 ist die generierte ID Ihrer Masterpage. Im Code-Behind können Sie this.ID auf das setzen, was Sie wollen, und jeder Unterinhalt wird stattdessen mit dieser ID vorangestellt.

Das Problem mit dem obigen Code besteht darin, dass Sie sich auf eine magische Zeichenfolge für eine Steuerelement-ID verlassen. Sie müssen vorsichtig damit sein, wenn Steuerelemente in Benutzersteuerelemente verschoben werden und Masterseiten verschachtelt werden. Ich bin mir nicht sicher, warum Sie ListBox1.SelectedValue nicht verwenden können?

    
Keith 06.07.2011 03:29
quelle

Tags und Links