Freezable.IsFrozen Eigenschaft
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.
Ruft einen Wert ab, der angibt, ob das Objekt derzeit geändert werden kann.
public:
property bool IsFrozen { bool get(); };
public bool IsFrozen { get; }
member this.IsFrozen : bool
Public ReadOnly Property IsFrozen As Boolean
Eigenschaftswert
true
, wenn das Objekt eingefroren ist und nicht geändert werden kann, false
, wenn das Objekt geändert werden kann.
Hinweise
Beim Versuch, ein Objekt zu ändern, wenn dessen IsFrozen Eigenschaft ausgelöst wird, wird true
ein InvalidOperationExceptionausgelöst.
Diese Eigenschaft ist aus Sicht des Objektmodells schreibgeschützt. In einigen der Dokumentationen zu Freezable Verhaltensweisen wird möglicherweise "sets IsFrozen to true
" oder eine ähnliche Sprache erwähnt, wenn das Verhalten anderer Methoden von Freezableerläutert wird, aber dieses Verhalten tritt intern in den Klasseninstanzen auf, wenn Methoden der -Instanz die privaten Variablen bearbeiten, die in der abstrakten Klasse vorhanden sind. Um den Wert dieser Eigenschaft festzulegen, sollten Sie aufrufen Freeze. Dies ist effektiv ein einmaliger Vorgang, um die IsFrozen Eigenschaft vom ursprünglichen Standardzustand false
in den true
Zustand zu ändern. Es gibt keine Möglichkeit, den Wert wieder auf false
festzulegen. Stattdessen können Sie jede tiefgehende Kopie ändern, die vom Original erstellt wurde (siehe die Clone -Methode). Dies ist von Entwurf aus, und jede abgeleitete Klasse sollte sich verhalten, wenn sie auf die Fälle angewendet wird, in denen das Freezable Muster nützlich ist.