PropertyDescriptor.SetValue(Object, Object) Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Wenn sie in einer abgeleiteten Klasse außer Kraft gesetzt wird, wird der Wert der Komponente auf einen anderen Wert festgelegt.
public:
abstract void SetValue(System::Object ^ component, System::Object ^ value);
public abstract void SetValue(object component, object value);
abstract member SetValue : obj * obj -> unit
Public MustOverride Sub SetValue (component As Object, value As Object)
Parameter
- component
- Object
Die Komponente mit dem Eigenschaftswert, der festgelegt werden soll.
- value
- Object
Der neue Wert.
Hinweise
In der Regel wird diese Methode durch Spiegelung implementiert.
Diese Methode erstellt automatisch DesignerTransaction in der folgenden Reihenfolge:
Die Methode ruft die IDesignerHost.CreateTransaction Methode auf, um eine neue DesignerTransaction zum Darstellen der Änderungen zu erstellen.
Die Methode ruft die IComponentChangeService.OnComponentChanging Methode auf, um anzugeben, dass die Transaktion begonnen hat, und die Änderungen sind dabei.
Die Methode setzt die Eigenschaft auf den Wert zurück, der durch die Prüfreihenfolge dieser Methode bestimmt wird.
Die Methode ruft die IComponentChangeService.OnComponentChanged Methode auf, um anzugeben, dass die Änderungen aufgetreten sind.
Die Methodenaufrufe DesignerTransaction.Commit , um anzugeben, dass die Transaktion abgeschlossen ist.
Der Zweck der Transaktion ist die Unterstützung Undo und Redo Funktionalität.
Hinweise für Ausführende
Wenn Sie diese Methode außer Kraft setzen, sollte der Wert der Eigenschaft festgelegt werden, indem Sie die entsprechende "SetMyProperty"-Methode aufrufen, die Sie implementieren müssen. Wenn der angegebene Wert ungültig ist, sollte die Komponente eine Ausnahme auslösen, die übergeben wird. Sie sollten die Eigenschaft so entwerfen, dass eine "GetMyProperty"-Methode (die Sie implementiert haben) nach einer "SetMyProperty"-Methode den Wert zurückgibt, der übergeben wird, wenn die "SetMyProperty"-Methode keine Ausnahme auslöst.