(0) exportieren Drucken
Alle erweitern
Dieser Artikel wurde maschinell übersetzt. Bewegen Sie den Mauszeiger über die Sätze im Artikel, um den Originaltext anzuzeigen. Weitere Informationen
Übersetzung
Original

Freezable-Klasse

Definiert ein Objekt mit einem änderbaren Zustand und einem schreibgeschützten (fixierten) Zustand. Klassen, die von Freezable abgeleitet sind, stellen ausführliche Änderungsbenachrichtigung bereit, können als nicht änderbar festgelegt werden und können sich klonen.

Namespace:  System.Windows
Assembly:  WindowsBase (in WindowsBase.dll)

public abstract class Freezable : DependencyObject

Der Freezable-Typ macht die folgenden Member verfügbar.

  NameBeschreibung
Geschützte MethodeFreezableInitialisiert eine neue Instanz einer abgeleiteten Freezable-Klasse.
Zum Seitenanfang

  NameBeschreibung
Öffentliche EigenschaftCanFreezeRuft einen Wert ab, der angibt, ob das Objekt als nicht änderbar festgelegt werden kann.
Öffentliche EigenschaftDependencyObjectTypeRuft den DependencyObjectType ab, der den CLR-Typ dieser Instanz umschließt.  (Von DependencyObject geerbt.)
Öffentliche EigenschaftDispatcherRuft den Dispatcher ab, der diesem DispatcherObject zugeordnet ist. (Von DispatcherObject geerbt.)
Öffentliche EigenschaftIsFrozenRuft einen Wert ab, der angibt, ob das Objekt gegenwärtig änderbar ist.
Öffentliche EigenschaftIsSealedRuft einen Wert ab, der angibt, ob diese Instanz derzeit versiegelt (schreibgeschützt) ist. (Von DependencyObject geerbt.)
Zum Seitenanfang

  NameBeschreibung
Öffentliche MethodeCheckAccessBestimmt, ob der aufrufende Thread auf dieses DispatcherObject zugreifen kann. (Von DispatcherObject geerbt.)
Öffentliche MethodeClearValue(DependencyProperty)Löscht den lokalen Wert einer Eigenschaft. Die zu löschende Eigenschaft wird mit einem DependencyProperty-Bezeichner angegeben. (Von DependencyObject geerbt.)
Öffentliche MethodeClearValue(DependencyPropertyKey)Löscht den lokalen Wert einer schreibgeschützten Eigenschaft. Die zu löschende Eigenschaft wird mit einem DependencyPropertyKey angegeben. (Von DependencyObject geerbt.)
Öffentliche MethodeCloneErstellt einen änderbaren Klon der Freezable, indem tiefe Kopien von den Werten des Objekts erzeugt werden. Beim Kopieren von Abhängigkeitseigenschaften des Objekts kopiert diese Methode Ausdrücke (die jedoch möglicherweise nicht mehr aufgelöst werden können), jedoch keine Animationen oder ihre aktuellen Werte.
Geschützte MethodeCloneCoreDefiniert die Instanz als Klon (tiefe Kopie) des angegebenen Freezable mit Basiseigenschaftswerten (nicht animiert).
Öffentliche MethodeCloneCurrentValueErstellt einen änderbaren Klon (tiefe Kopie) von Freezable mit den aktuellen Werten.
Geschützte MethodeCloneCurrentValueCoreDefiniert die Instanz mit aktuellen Eigenschaftswerten als änderbaren Klon (tiefe Kopie) des angegebenen Freezable.
Öffentliche MethodeCoerceValueWandelt den Wert der angegebenen Abhängigkeitseigenschaft um. Für die Umwandlung wird eine vorhandene CoerceValueCallback-Funktion aufgerufen, die in den Metadaten der Abhängigkeitseigenschaft für das aufrufende DependencyObject angegeben ist. (Von DependencyObject geerbt.)
Geschützte MethodeCreateInstanceInitialisiert eine neue Instanz der Freezable-Klasse.
Geschützte MethodeCreateInstanceCoreErstellt beim Implementieren in einer abgeleiteten Klasse eine neue Instanz der abgeleiteten Freezable-Klasse.
Öffentliche MethodeEqualsBestimmt, ob ein angegebenes DependencyObject dem aktuellen DependencyObject entspricht. (Von DependencyObject geerbt.)
Geschützte MethodeFinalize Gibt einem Objekt Gelegenheit, Ressourcen freizugeben und andere Bereinigungen durchzuführen, bevor es von der Garbage Collection freigegeben wird. (Von Object geerbt.)
Öffentliche MethodeFreeze()Definiert das aktuelle Objekt als nicht änderbar und legt seine IsFrozen-Eigenschaft auf true fest.
Geschützte MethodeStatischer MemberFreeze(Freezable, Boolean)Wenn der isChecking-Parameter true ist, gibt diese Methode an, ob das angegebene Freezable als nicht änderbar festgelegt werden kann. Wenn der isChecking-Parameter false ist, versucht diese Methode, das angegebene Freezable als nicht änderbar festzulegen und gibt an, ob der Vorgang erfolgreich ausgeführt wurde.
Geschützte MethodeFreezeCoreLegt das Freezable-Objekt als nicht änderbar fest oder überprüft, ob es als nicht änderbar festgelegt werden kann.
Öffentliche MethodeGetAsFrozenErstellt eine fixierte Kopie von Freezable mit Basiseigenschaftswerten (nicht animiert). Da die Kopie fixiert ist, werden alle fixierten Unterobjekte als Verweis kopiert.
Geschützte MethodeGetAsFrozenCoreDefiniert die Instanz als fixierten Klon des angegebenen Freezable mit Basiseigenschaftswerten (nicht animiert).
Öffentliche MethodeGetCurrentValueAsFrozenErstellt eine fixierte Kopie von Freezable mit aktuellen Eigenschaftswerten. Da die Kopie fixiert ist, werden alle fixierten Unterobjekte als Verweis kopiert.
Geschützte MethodeGetCurrentValueAsFrozenCoreLegt die aktuelle Instanz als fixierten Klon des angegebenen Freezable fest. Wenn das Objekt über animierte Abhängigkeitseigenschaften verfügt, werden die aktuellen animierten Werte kopiert.
Öffentliche MethodeGetHashCodeRuft einen Hashcode für dieses DependencyObject ab. (Von DependencyObject geerbt.)
Öffentliche MethodeGetLocalValueEnumeratorErstellt einen spezialisierten Enumerator, mit dem bestimmt wird, welche Abhängigkeitseigenschaften dieses DependencyObject über lokal festgelegte Werte verfügen. (Von DependencyObject geerbt.)
Öffentliche MethodeGetTypeRuft den Type der aktuellen Instanz ab. (Von Object geerbt.)
Öffentliche MethodeGetValueGibt den aktuellen effektiven Wert einer Abhängigkeitseigenschaft in dieser Instanz eines DependencyObject zurück. (Von DependencyObject geerbt.)
Öffentliche MethodeInvalidatePropertyBerechnet den effektiven Wert für die angegebene Abhängigkeitseigenschaft neu (Von DependencyObject geerbt.)
Geschützte MethodeMemberwiseCloneErstellt eine flache Kopie des aktuellen Object. (Von Object geerbt.)
Geschützte MethodeOnChangedWird aufgerufen, wenn das aktuelle Freezable-Objekt geändert wird.
Geschützte MethodeOnFreezablePropertyChanged(DependencyObject, DependencyObject)Stellt sicher, dass entsprechende Kontextzeiger für einen gerade festgelegten DependencyObjectType-Datenmember eingerichtet werden.
Geschützte MethodeOnFreezablePropertyChanged(DependencyObject, DependencyObject, DependencyProperty)Der Member unterstützt die Windows Presentation Foundation (WPF)-Infrastruktur und ist nicht für die direkte Verwendung im Code vorgesehen.
Geschützte MethodeOnPropertyChangedÜberschreibt die DependencyObject-Implementierung von OnPropertyChanged, um auch alle Changed-Handler als Reaktion auf eine Änderung einer Abhängigkeitseigenschaft vom Typ Freezable aufzurufen. (Überschreibt DependencyObject.OnPropertyChanged(DependencyPropertyChangedEventArgs).)
Öffentliche MethodeReadLocalValueGibt, sofern vorhanden, den lokalen Wert einer Abhängigkeitseigenschaft zurück. (Von DependencyObject geerbt.)
Geschützte MethodeReadPreambleStellt sicher, dass über einen gültigen Thread auf Freezable zugegriffen wird. Erben von Freezable müssen diese Methode am Anfang jeder API aufrufen, die Datenmember liest, bei denen es sich nicht um Abhängigkeitseigenschaften handelt.
Öffentliche MethodeSetCurrentValueLegt den Wert einer -Abhängigkeitseigenschaft fest, ohne die Wertquelle zu ändern. (Von DependencyObject geerbt.)
Öffentliche MethodeSetValue(DependencyProperty, Object)Legt den lokalen Wert einer Abhängigkeitseigenschaft fest, die über ihren Bezeichner angegeben wird. (Von DependencyObject geerbt.)
Öffentliche MethodeSetValue(DependencyPropertyKey, Object)Legt den lokalen Wert einer schreibgeschützten Abhängigkeitseigenschaft fest, die über ihren DependencyPropertyKey-Bezeichner angegeben wird. (Von DependencyObject geerbt.)
Geschützte MethodeShouldSerializePropertyGibt einen Wert zurück, der angibt, ob Serialisierungsprozesse den Wert der bereitgestellten Abhängigkeitseigenschaft serialisieren sollen. (Von DependencyObject geerbt.)
Öffentliche MethodeToStringGibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt. (Von Object geerbt.)
Öffentliche MethodeVerifyAccessErzwingt, dass der aufrufende Thread auf dieses DispatcherObject zugreifen kann. (Von DispatcherObject geerbt.)
Geschützte MethodeWritePostscriptLöst das Changed-Ereignis für Freezable aus und ruft seine OnChanged-Methode auf. Von Freezable abgeleitete Klassen sollten diese Methode am Ende jeder API aufrufen, die nicht als Abhängigkeitseigenschaften gespeicherte Klassenmember ändert.
Geschützte MethodeWritePreambleStellt sicher, dass das Freezable nicht fixiert ist und dass über einen gültigen Threadkontext darauf zugegriffen wird. Erben von Freezable sollten diese Methode am Anfang jeder API aufrufen, die Datenmember schreibt, bei denen es sich nicht um Abhängigkeitseigenschaften handelt.
Zum Seitenanfang

  NameBeschreibung
Öffentliches EreignisChangedTritt auf, wenn Freezable oder ein darin enthaltenes Objekt geändert wird.
Zum Seitenanfang

Die Freezable-Klasse stellt besondere Features bereit, mit denen die Anwendungsleistung bei der Verwendung von Objekten verbessert werden kann, bei denen Änderungen und Kopiervorgänge ressourcenintensiv sind. Im Folgenden sind Beispiele für Freezable-Objekte aufgeführt:

Ableiten von Freezable

Eine von Freezable abgeleitete Klasse erhält die folgenden Features:

  • Besondere Zustände: Ein schreibgeschützter (fixierter) Zustand und ein nicht schreibgeschützter Zustand.

  • Threadsicherheit: Ein fixiertes Freezable-Objekt kann über Threads freigegeben werden.

  • Ausführliche Änderungsbenachrichtigung: Im Gegensatz zu anderen DependencyObject-Objekten stellt ein Freezable-Objekt Änderungsbenachrichtigungen bereit, wenn Werte von Untereigenschaften geändert werden.

  • Leichtes Klonen: In der Freezable-Klasse sind bereits mehrere Methoden implementiert, die tiefe Klone erstellen.

Informationen zum Verwenden und Erstellen eigener Freezable-Objekte finden Sie unter Übersicht über Freezable-Objekte.

.NET Framework

Unterstützt in: 4.5, 4, 3.5, 3.0

.NET Framework Client Profile

Unterstützt in: 4, 3.5 SP1

Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core-Rolle wird nicht unterstützt), Windows Server 2008 R2 (Server Core-Rolle wird mit SP1 oder höher unterstützt; Itanium wird nicht unterstützt)

Es werden nicht alle Versionen sämtlicher Plattformen von .NET Framework unterstützt.. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen für .NET Framework.

Alle öffentlichen static-Member dieses Typs sind threadsicher. Bei Instanzmembern ist die Threadsicherheit nicht gewährleistet.

Wenn die IsFrozen-Eigenschaft den Wert false hat, kann auf ein Freezable-Objekt nur über den Thread zugegriffen werden, in dem es erstellt wurde. Der Versuch des Zugriffs über einen anderen Thread löst eine InvalidOperationException aus. Die Dispatcher.Invoke-Methode und die Dispatcher.BeginInvoke-Methode unterstützen Marshalling zum richtigen Thread.

Wenn ihre IsFrozen-Eigenschaft true ist, werden Freezable-Objekte zu Freethreadobjekten. Weitere Informationen finden Sie unter Übersicht über Freezable-Objekte.

System.Object
  System.Windows.Threading.DispatcherObject
    System.Windows.DependencyObject
      System.Windows.Freezable
        System.Windows.Controls.Ribbon.RibbonControlSizeDefinition
        System.Windows.Controls.Ribbon.RibbonGroupSizeDefinitionBase
        System.Windows.Input.InputBinding
        System.Windows.Media.Animation.Animatable
        System.Windows.Media.Animation.BooleanKeyFrame
        System.Windows.Media.Animation.BooleanKeyFrameCollection
        System.Windows.Media.Animation.ByteKeyFrame
        System.Windows.Media.Animation.ByteKeyFrameCollection
        System.Windows.Media.Animation.CharKeyFrame
        System.Windows.Media.Animation.CharKeyFrameCollection
        System.Windows.Media.Animation.ColorKeyFrame
        System.Windows.Media.Animation.ColorKeyFrameCollection
        System.Windows.Media.Animation.DecimalKeyFrame
        System.Windows.Media.Animation.DecimalKeyFrameCollection
        System.Windows.Media.Animation.DoubleKeyFrame
        System.Windows.Media.Animation.DoubleKeyFrameCollection
        System.Windows.Media.Animation.EasingFunctionBase
        System.Windows.Media.Animation.Int16KeyFrame
        System.Windows.Media.Animation.Int16KeyFrameCollection
        System.Windows.Media.Animation.Int32KeyFrame
        System.Windows.Media.Animation.Int32KeyFrameCollection
        System.Windows.Media.Animation.Int64KeyFrame
        System.Windows.Media.Animation.Int64KeyFrameCollection
        System.Windows.Media.Animation.KeySpline
        System.Windows.Media.Animation.MatrixKeyFrame
        System.Windows.Media.Animation.MatrixKeyFrameCollection
        System.Windows.Media.Animation.ObjectKeyFrame
        System.Windows.Media.Animation.ObjectKeyFrameCollection
        System.Windows.Media.Animation.Point3DKeyFrame
        System.Windows.Media.Animation.Point3DKeyFrameCollection
        System.Windows.Media.Animation.PointKeyFrame
        System.Windows.Media.Animation.PointKeyFrameCollection
        System.Windows.Media.Animation.QuaternionKeyFrame
        System.Windows.Media.Animation.QuaternionKeyFrameCollection
        System.Windows.Media.Animation.RectKeyFrame
        System.Windows.Media.Animation.RectKeyFrameCollection
        System.Windows.Media.Animation.Rotation3DKeyFrame
        System.Windows.Media.Animation.Rotation3DKeyFrameCollection
        System.Windows.Media.Animation.SingleKeyFrame
        System.Windows.Media.Animation.SingleKeyFrameCollection
        System.Windows.Media.Animation.SizeKeyFrame
        System.Windows.Media.Animation.SizeKeyFrameCollection
        System.Windows.Media.Animation.StringKeyFrame
        System.Windows.Media.Animation.StringKeyFrameCollection
        System.Windows.Media.Animation.ThicknessKeyFrame
        System.Windows.Media.Animation.ThicknessKeyFrameCollection
        System.Windows.Media.Animation.Vector3DKeyFrame
        System.Windows.Media.Animation.Vector3DKeyFrameCollection
        System.Windows.Media.Animation.VectorKeyFrame
        System.Windows.Media.Animation.VectorKeyFrameCollection
        System.Windows.Media.DoubleCollection
        System.Windows.Media.ImageMetadata
        System.Windows.Media.Int32Collection
        System.Windows.Media.Media3D.GeneralTransform2DTo3D
        System.Windows.Media.Media3D.GeneralTransform3DTo2D
        System.Windows.Media.Media3D.Point3DCollection
        System.Windows.Media.Media3D.Vector3DCollection
        System.Windows.Media.PointCollection
        System.Windows.Media.VectorCollection
        System.Windows.Shell.TaskbarItemInfo
        System.Windows.Shell.ThumbButtonInfo
        System.Windows.Shell.WindowChrome

Community-Beiträge

HINZUFÜGEN
Anzeigen:
© 2014 Microsoft