Frage

Haben wir etwas Besonderes zu tun ASP.NET Teilklassen bewusst Kontrollen zu haben, die in unserer Benutzersteuerung der Basisklassen deklariert werden? Die Teilklassen halten Erzeugungs Erklärungen für die Kontrollen in der Basisklasse, die die Kontrollen in der Basisklasse bedeuten erhalten versteckt und sind null.

War es hilfreich?

Lösung

Das CodeFileBaseClass Attribut kann auf @Page oder < a href = "http://msdn.microsoft.com/en-us/library/d19c0t4b.aspx" rel = "nofollow noreferrer"> @ Kontrolle Erklärungen die ASP.NET machen Laufzeit Kenntnis von Kontrollen erklärt in Ihrer Basisklasse.

MSDN beschreibt es wie folgt:

  

Gibt den Typ Name einer Basisklasse für eine Seite und der damit verbundenen   Code-Behind-Klasse.

     

Dieses Attribut ist   optional, aber wenn es verwendet, um die   Codefile-Attribut muss auch sein,   vorhanden. Verwenden Sie dieses Attribut, wenn Sie   will ein gemeinsames Szenario implementieren,   wo Sie definieren gemeinsame Felder (und   Fakultativ zugehörige Ereignisse) in einem   Basisklasse die Steuerelemente referenzieren   in einer Webseite erklärt. Wegen dem   ASP.NET Codegenerierung Modell, wenn Sie   die Felder in einer Basisklasse definiert,   ohne dieses Attribut zu verwenden, um   Kompilierung neues Mitglied Definitionen   würde für die Kontrollen erzeugt   auf der Webseite erklärt (innerhalb eines   trennen Stummel Teilklasse), und die   gewünschtes Szenario würde nicht funktionieren. Aber   wenn Sie die CodeFileBaseClass verwenden   Attribut der Basisklasse zuzuordnen   mit der Seite und machen Sie Ihre   Teilklasse (der Name zugewiesen wird   das Inherits Attribut und dessen Source   Datei wird von der Codefile verwiesen   Attribut) Vererben von der Basis   Klasse, dann werden die Felder in der Basis   Klasse in der Lage, die referenzieren   Steuerelemente auf der Seite nach Code   Generation .

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top