Definieren von benutzerdefinierten Komponenteneigenschaften und Auslösen von PropertyChanged-Ereignissen
Aktualisiert: November 2007
Wenn Sie eine Clientkomponentenklasse erstellen, definieren Sie die Eigenschaften, auf die Seitenentwickler Ihrer Einschätzung nach zugreifen. Sie können auch Sys.Component.propertyChanged-Benachrichtigungsereignisse in den Set-Accessoren für Eigenschaften der Komponente auslösen. Seitenentwickler, die diese Komponente verwenden, können das Meldungsereignis für die Eigenschaft an ihren eigenen Handler binden, wenn sich der Wert der Eigenschaft ändert.
Definieren von öffentlichen Eigenschaften in einer benutzerdefinierten Clientkomponente
In ASP.NET-AJAX-Clientkomponenten werden Eigenschaftenaccessoren als Methoden des Klassenprototyps definiert. Die Accessormethoden werden mit get_ und set_-Präfixen gefolgt vom Eigenschaftennamen benannt. Das folgende Beispiel zeigt, wie eine Schreib/-Leseeigenschaft mit dem Namen interval im Klassenprototyp definiert wird.
get_interval: function() {
return this._interval;
},
set_interval: function(value) {
this._interval = value;
}
Auslösen eines PropertyChanged-Ereignisses
Sie können die Sys.Component raisePropertyChanged-Methode in einem set-Accessor einer Eigenschaft aufrufen, um ein propertyChanged-Ereignis auszulösen. Die Komponente erbt die raisePropertyChanged-Methode von der Basisklasse Sys.Component, Sys.UI.Behavior oder Sys.UI.Control.
Das folgende Beispiel veranschaulicht, wie ein propertyChanged-Ereignis für eine interval-Eigenschaft ausgelöst wird, sobald die Eigenschaft festgelegt wird.
get_interval: function() {
return this._interval;
},
set_interval: function(value) {
if (this._interval !== value) {
this._interval = value;
this.raisePropertyChanged('interval');
}
}
Ein Beispiel zum Auslösen und Behandeln des propertyChanged-Ereignisses einer benutzerdefinierten Komponente finden Sie unter Erstellen von benutzerdefinierten nicht visuellen Clientkomponenten. Weitere Informationen über die raisePropertyChanged-Methode finden Sie unter Sys.Component.raisePropertyChanged-Methode.
Siehe auch
Aufgaben
Erstellen von benutzerdefinierten nicht visuellen Clientkomponenten
Konzepte
Erstellen einer Clientkomponentenklasse mit dem Prototypmodell