2009-05-18 9 views
0

Ist es möglich, Visual Studio automatisch eine Ereignishandlermethode für eine UI-Komponente in der Markupansicht erstellen zu lassen?Automatisches Erstellen von Ereignishandlern aus der Markupansicht (C#)

Lassen Sie uns sagen, ich habe

<asp:label runat="server" /> 

und möchte die OnPreRender Ereignis behandeln ..

Wie beurteilen Sie die Handler-Methode erstellen? Manuell oder wechseln Sie zur Entwurfsansicht und doppelklicken Sie auf das Ereignis im Eigenschaftenfenster?

Antwort

1

Sie können eine Handlermethode automatisch erstellen, indem Sie die OnLoad- oder Page_Load-Methode Ihrer Seite aufrufen und einen Handler für das Ereignis hinzufügen. Zum Beispiel für dieses Label:

<asp:label ID="MyLabel" runat="server" /> 

würden Sie dies tun:

protected void OnLoad(object sender, EventArgs e) 
{ 
    MyLabel.PreRender += 
} 

An dieser Stelle IntelliSense sollte treten und bieten einen Event-Handler für Sie zu generieren. Wenn Sie mehrmals auf TAB drücken, sollten Sie eine neue MyLabel_PreRender-Methode verwenden.

Viel Glück!

+0

ich benutze vs 2005, so hilft das .. dump, dass ich nicht selbst herausfinden konnte :( – Michal

+0

Nicht dumm überhaupt Es ist nicht möglich, alles zu entdecken - deshalb gibt es solche Seiten. –

1

Sie sollten in der Lage sein, einfach den Ereignishandler in Markup-Ansicht schreiben und Tabulatorvervollständigung verwenden, um die Methode in Code zu generieren und gleichzeitig in Markup anzugeben. Dies ist eine neue Funktion von VS.NET 2008. Wenn Sie eine ältere Version verwenden, haben Sie diese Funktion möglicherweise nicht.

1

einen Blick auf diesen Link von Msdn Nehmen: http://msdn.microsoft.com/en-us/library/6w2tb12s%28v=VS.90%29.aspx (VS 2008 Version)

Er sagt, dass Sie eine Methode deklarativ mit dem Namen Page_event erstellen können.

Um beispielsweise einen Handler für das Load-Ereignis der Seite zu erstellen, erstellen Sie eine Methode mit dem Namen PageLoad.

ASP.NET-Seiten binden Seitenereignisse automatisch an Methoden mit dem Namen "Page_event". Diese automatische Bindung wird vom AutoEventWireup-Attribut in der @ Page-Direktive konfiguriert, die standardmäßig auf true festgelegt ist. Wenn Sie AutoEventWireup auf false setzen, sucht die Seite nicht automatisch nach Methoden, die die Namenskonvention Page_event verwenden.

Arbeitete für mich!

Verwandte Themen