Freigeben über


WindowChrome Klasse

Definition

Stellt ein Objekt dar, das die Anpassungen für den Nicht-Clientbereich eines Fensters beschreibt.

public ref class WindowChrome : System::Windows::Freezable
public class WindowChrome : System.Windows.Freezable
type WindowChrome = class
    inherit Freezable
Public Class WindowChrome
Inherits Freezable
Vererbung

Hinweise

Mit der WindowChrome Klasse können Sie Windows Presentation Foundation (WPF)-Inhalte in den Nicht-Clientbereich eines Fensters erweitern, das normalerweise für den Fenster-Manager des Betriebssystems reserviert ist.

Windows-Standard

Standardfenster bestehen aus zwei überlappenden Rechtecke. Das äußere Rechteck ist der Nicht-Clientbereich, der häufig als Chrom bezeichnet wird. Sie wird vom Fenster-Manager des Betriebssystems gezeichnet und verwaltet. Seine Abmessungen werden durch Standardeinstellungen des Betriebssystems bestimmt. Der Nicht-Clientframe stellt Standardfensterfeatures und -verhalten bereit. Dazu gehören Beschriftungsschaltflächen (Minimieren, Maximieren und Schließen), der Fensterrahmen, das Ändern der Größe und das Verschieben von Verhaltensweisen, das Anwendungssymbol und der Titel sowie das Systemmenü. Das innere Rechteck ist der Clientbereich. Sie enthält den Inhalt Ihrer Anwendung und wird von der Anwendung gezeichnet und verwaltet. Weitere Informationen zu Windows in WPF-Anwendungen finden Sie unter WPF Windows Overview.

Die folgende Abbildung zeigt die Teile eines Standardfensters.

Window-Elemente

Benutzerdefiniertes Windows

Sie können einen Fensterrahmen anpassen, indem Sie die Window.WindowStyle Eigenschaft auf None oder mithilfe der WindowChrome Klasse festlegen.

WindowStyle.None

Eine Möglichkeit zum Anpassen der Darstellung eines WPF-Anwendungsfensters ist das Festlegen der Window.WindowStyle Eigenschaft auf None. Dadurch wird der Nicht-Clientframe aus dem Fenster entfernt und nur der Clientbereich verlassen, auf den Sie eine benutzerdefinierte Formatvorlage anwenden können. Wenn der Nicht-Clientframe jedoch entfernt wird, verlieren Sie auch die Systemfeatures und -verhaltensweisen, die es bereitstellt, z. B. Beschriftungsschaltflächen und Fensteranpassungen. Ein weiterer Nebeneffekt ist, dass das Fenster die Windows-Taskleiste abdeckt, wenn sie maximiert wird. Die Einstellung WindowStyle.None ermöglicht es Ihnen, eine vollständig benutzerdefinierte Anwendung zu erstellen, erfordert aber auch, dass Sie benutzerdefinierte Logik in Ihrer Anwendung implementieren, um das Standardfensterverhalten zu emulieren.

WindowChrome

Um ein Fenster anzupassen, während die Standardfunktionalität beibehalten wird, können Sie die WindowChrome Klasse verwenden. Die WindowChrome Klasse trennt die Funktionalität des Fensterrahmens von den visuellen Elementen und ermöglicht es Ihnen, die Grenze zwischen dem Client und nicht clientseitigen Bereichen des Anwendungsfensters zu steuern. Mit WindowChrome der Klasse können Sie WPF-Inhalte im Fensterrahmen platzieren, indem Sie den Clientbereich erweitern, um den Nicht-Clientbereich abzudecken. Gleichzeitig behält es das Systemverhalten durch zwei unsichtbare Bereiche bei; die Größe von Rahmen - und Beschriftungsbereichen ändern.

Es gibt zwei Hauptteile zum Erstellen eines benutzerdefinierten Fensters mithilfe der WindowChrome Klasse. Zuerst passen Sie den Nicht-Clientteil des Fensters an, indem Sie eigenschaften festlegen, die für das WindowChrome Objekt verfügbar gemacht werden. Anschließend geben Sie eine Vorlage für das Fenster an, das den Teil Ihrer Anwendung definiert, der in den Nicht-Clientbereich erweitert wird. Die eigenschaften, die für das WindowChrome Objekt verfügbar gemacht werden, sind ResizeBorderThickness, CaptionHeight, CornerRadiusund GlassFrameThickness.

Die ResizeBorderThickness Eigenschaft gibt einen unsichtbaren Rahmen um die Außenseite des Anwendungsfensters an, auf den der Benutzer klicken und ziehen kann, um die Größe des Fensters zu ändern.

Die CaptionHeight Eigenschaft gibt einen unsichtbaren Bereich am oberen Rand des Fensters an, der systembedingte Verhaltensweisen ermöglicht, die normalerweise der Titelleiste zugeordnet sind. Zu diesen Verhaltensweisen gehören: Klicken und Ziehen, um das Fenster zu verschieben, doppelklicken Sie, um das Fenster zu maximieren, und klicken Sie mit der rechten Maustaste, um das Systemmenü anzuzeigen.

Der Rahmen und der Beschriftungsbereich für größenänderung weisen keine visuellen Elemente auf; sie definieren nur Bereiche, die auf Eingaben reagieren und standardmäßige vom System bereitgestellte Fensterverhalten aktivieren.

Die CornerRadius Eigenschaft gibt den Betrag an, in dem die Ecken des Fensters abgerundet werden. Diese Eigenschaft hat keine Auswirkung, wenn der Glasrahmen für ein Fenster aktiviert ist.

Die GlassFrameThickness Eigenschaft gibt die Breite des Glasrahmens um das Fenster an. Standardmäßig wird der von der WindowNonClientFrameThickness Eigenschaft angegebene Systemwert verwendet, um die Darstellung eines Standardfensters zu emulieren. Wenn der Glasrahmen verwendet wird, sind die Beschriftungsschaltflächen für Minimieren, Maximieren und Schließen sichtbar und interaktiv. Die Anwendung ist für die Anzeige des Anwendungssymbols und des Beschriftungstexts verantwortlich. Sie können die GlassFrameThickness Eigenschaft so festlegen, dass der Glasrahmen breiter oder schmaler als der Standardwert ist.

Vorsicht

Die Größe der Beschriftungsschaltflächen ändert sich nicht, wenn die GlassFrameThickness Eigenschaft geändert wird. Wenn die Höhe des oberen Fensterrahmens kleiner als die Höhe der Beschriftungsschaltflächen ist, sind die Beschriftungsschaltflächen nicht vollständig sichtbar.

Um ein benutzerdefiniertes Fenster ohne Glasrahmen zu erstellen, legen Sie die GlassFrameThickness Eigenschaft auf einen einheitlichen Wert von 0 fest. Dadurch werden die Standardbeschriftungsschaltflächen deaktiviert und ausgeblendet.

Um den Glasrahmen so zu erweitern, dass es das gesamte Fenster abdeckt, legen Sie die GlassFrameThickness Eigenschaft auf einen negativen Wert auf jeder Seite fest. Wenn die GlassFrameThickness Eigenschaft auf einen negativen Wert für jede Seite festgelegt wird, ist der koercierte Wert gleich GlassFrameCompleteThickness.

Hinweis

Aero ist eine Reihe visueller Verbesserungen für das Aussehen und die Funktionalität des Windows-Desktops, der in Windows Vista eingeführt wurde. Eines der optisch offensichtlicheren Merkmale von Aero ist transluzente Glasfensterrahmen. Windows Aero wird durch das Desktopkompositionsfeature des Desktopfenster-Managers (DWM) aktiviert.

Windows Aero-Glaseffekte werden auf allen Betriebssystemen nicht unterstützt und können auf unterstützten Betriebssystemen deaktiviert werden. Wenn Windows Aero nicht verfügbar ist, wird der Glasrahmen unabhängig vom GlassFrameThickness Eigenschaftswert nicht angezeigt. Der durch diese Eigenschaft angegebene Rahmenbereich wird stattdessen schwarz angezeigt. Überprüfen Sie die IsGlassEnabled Eigenschaft, um sicherzustellen, dass Windows Aero-Glaseffekte verfügbar sind. Wenn keine Glaseffekte verfügbar sind, sollten Sie einen alternativen Fensterstil bereitstellen, der den Glasrahmen nicht verwendet, oder das Standardfenster verwenden, indem Sie die Fensterformatvorlage auf NULL festlegen.

Sie erweitern den WPF-Inhalt in den Fensterrahmen, indem Sie eine ControlTemplate angeben, die das Aussehen und Verhalten des Frameinhalts definiert. Sie legen den TargetType der ControlTemplate auf den Typ des Fensters fest, das Sie anpassen möchten.

<ControlTemplate TargetType="{x:Type local:MainWindow}">

Standardmäßig sind die Teile aller visuellen Elemente, die sich im Nicht-Clientbereich des Fensters befinden, nicht interaktiv. Um interaktive Elemente im Nicht-Client-Bereich zu aktivieren, fügen Sie die angefügte WindowsChrome.IsHitTestVisibleInChrome-Eigenschaft an das Element an, und legen Sie sie auf "true" fest.

Das folgende XAML-Markup zeigt die wichtigsten Elemente, die zum Anpassen eines Fensters mit der WindowChrome-Klasse erforderlich sind.

<Style x:Key="StandardStyle" TargetType="{x:Type local:MainWindow}">
    <Setter Property="shell:WindowChrome.WindowChrome">
        <Setter.Value>
            <shell:WindowChrome />
        </Setter.Value>
    </Setter>
    <Setter Property="Template">
        <Setter.Value>
            <ControlTemplate TargetType="{x:Type local:MainWindow}">
                <Grid>
                    <Border Background="White"
                            Margin="{Binding Source={x:Static shell:SystemParameters2.Current}, Path=WindowNonClientFrameThickness}">
                        <ContentPresenter Content="{TemplateBinding Content}" />
                    </Border>
                    <TextBlock Text="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=Title}"
                               VerticalAlignment="Top" HorizontalAlignment="Left"
                               Margin="36,8,0,0"/>
                    <Image Source="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=Icon}"
                           VerticalAlignment="Top" HorizontalAlignment="Left"
                           Margin="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=(shell:WindowChrome.WindowChrome).ResizeBorderThickness}"
                           Width="{Binding Source={x:Static shell:SystemParameters2.Current}, Path=SmallIconSize.Width}"
                           shell:WindowChrome.IsHitTestVisibleInChrome="True"/>
                </Grid>
            </ControlTemplate>
        </Setter.Value>
    </Setter>
</Style>

Der erste Setter fügt das WindowChrome an das Fenster an. Es verwendet alle Standardwerte für die WindowChrome-Eigenschaften, wodurch das Fenster wie ein Standardfenster aussieht.

<Setter Property="shell:WindowChrome.WindowChrome">
    <Setter.Value>
        <shell:WindowChrome />
    </Setter.Value>
</Setter>

Die Fenstervorlage muss einen Inhaltsreferent angeben, um den Inhalt des in der Anwendung angegebenen Fensters anzuzeigen. Standardmäßig erweitert die WindowChrome-Klasse den Clientbereich, um den Nicht-Client-Rahmen abzudecken. Um den Glasrahmen aufzudecken, müssen Sie einen Rand um den ContentPresenter angeben. Dieses Markup gibt einen Rahmen mit einem weißen Hintergrund um den Inhaltsreferent an, um die Darstellung eines Standardfensters zu emulieren. Außerdem wird ein Rand angegeben, der an die WindowNonClientFrameThickness-Eigenschaft gebunden ist, die die Standardsystembreite für den Frame abruft.

<Border Background="White"
    Margin="{Binding Source={x:Static shell:SystemParameters2.Current}, Path=WindowNonClientFrameThickness}">
    <ContentPresenter Content="{TemplateBinding Content}" />
</Border>

Das Anwendungssymbol und der Titel werden nicht von der WindowChrome-Klasse angezeigt. sie müssen dem Rahmen als benutzerdefinierter Inhalt hinzugefügt werden. Der folgende XAML-Code fügt ein Bild und einen Textblock hinzu, um das Symbol und den Titel anzuzeigen. Beide Elemente sind an die entsprechenden Eigenschaften im Fenster gebunden. Die Bildbreite ist an die SmallIconSize-Breite gebunden, die die Standardsystemgröße für das Symbol abruft. Die angefügte IsHitTestVisibleInChrome-Eigenschaft wird für das Bild festgelegt, sodass sie Mausereignisse empfangen kann.

<Image Source="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=Icon}"
       VerticalAlignment="Top" HorizontalAlignment="Left"
       Margin="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=(shell:WindowChrome.WindowChrome).ResizeBorderThickness}"
       Width="{Binding Source={x:Static shell:SystemParameters2.Current}, Path=SmallIconSize.Width}"
       shell:WindowChrome.IsHitTestVisibleInChrome="True"/>

<TextBlock Text="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=Title}"
           VerticalAlignment="Top" HorizontalAlignment="Left"
           Margin="36,8,0,0"/>

Konstruktoren

Name Beschreibung
WindowChrome()

Initialisiert eine neue Instanz der WindowChrome-Klasse.

Felder

Name Beschreibung
CaptionHeightProperty

Identifies the CaptionHeight dependency property.

CornerRadiusProperty

Identifies the CornerRadius dependency property.

GlassFrameThicknessProperty

Identifies the GlassFrameThickness dependency property.

IsHitTestVisibleInChromeProperty

Identifies the IsHitTestVisibleInChrome dependency property.

NonClientFrameEdgesProperty

Identifies the NonClientFrameEdges dependency property.

ResizeBorderThicknessProperty

Identifies the ResizeBorderThickness dependency property.

ResizeGripDirectionProperty

Identifies the ResizeGripDirection dependency property.

UseAeroCaptionButtonsProperty

Identifies the UseAeroCaptionButtons dependency property.

WindowChromeProperty

Identifies the WindowChrome dependency property.

Eigenschaften

Name Beschreibung
CanFreeze

Ruft einen Wert ab, der angibt, ob das Objekt unveränderlich gemacht werden kann.

(Geerbt von Freezable)
CaptionHeight

Ruft die Höhe des Beschriftungsbereichs am oberen Rand eines Fensters ab oder legt diese fest.

CornerRadius

Dient zum Abrufen oder Festlegen eines Werts, der angibt, wie viel die Ecken eines Fensters abgerundet werden.

DependencyObjectType

Ruft den DependencyObjectType CLR-Typ dieser Instanz ab.

(Geerbt von DependencyObject)
Dispatcher

Ruft dies Dispatcher ab, dem dies DispatcherObject zugeordnet ist.

(Geerbt von DispatcherObject)
GlassFrameCompleteThickness

Ruft eine einheitliche Dicke von -1 ab.

GlassFrameThickness

Dient zum Abrufen oder Festlegen eines Werts, der die Breite des Glasrahmens um ein Fenster angibt.

IsFrozen

Ruft einen Wert ab, der angibt, ob das Objekt derzeit geändert werden kann.

(Geerbt von Freezable)
IsSealed

Ruft einen Wert ab, der angibt, ob diese Instanz aktuell versiegelt ist (schreibgeschützt).

(Geerbt von DependencyObject)
NonClientFrameEdges

Dient zum Abrufen oder Festlegen eines Werts, der angibt, welche Kanten des Fensterrahmens nicht dem Client gehören.

ResizeBorderThickness

Dient zum Abrufen oder Festlegen eines Werts, der die Breite des Rahmens angibt, der zum Ändern der Größe eines Fensters verwendet wird.

UseAeroCaptionButtons

Dient zum Abrufen oder Festlegen eines Werts, der angibt, ob Treffertests auf den Windows Aero-Beschriftungsschaltflächen aktiviert sind.

Angefügte Eigenschaften

Name Beschreibung
IsHitTestVisibleInChrome

Stellt ein Objekt dar, das die Anpassungen für den Nicht-Clientbereich eines Fensters beschreibt.

ResizeGripDirection

Stellt ein Objekt dar, das die Anpassungen für den Nicht-Clientbereich eines Fensters beschreibt.

WindowChrome

Dient zum Abrufen oder Festlegen der Instanz, die WindowChrome an ein Fenster angefügt ist.

Methoden

Name Beschreibung
CheckAccess()

Bestimmt, ob der aufrufende Thread Zugriff auf diesen DispatcherObjectThread hat.

(Geerbt von DispatcherObject)
ClearValue(DependencyProperty)

Löscht den lokalen Wert einer Eigenschaft. Die zu löschende Eigenschaft wird durch einen DependencyProperty Bezeichner angegeben.

(Geerbt von DependencyObject)
ClearValue(DependencyPropertyKey)

Löscht den lokalen Wert einer schreibgeschützten Eigenschaft. Die zu löschende Eigenschaft wird durch eine DependencyPropertyKey.

(Geerbt von DependencyObject)
Clone()

Erstellt einen modifizierbaren Klon des FreezableObjekts, wobei tiefe Kopien der Werte des Objekts erstellt werden. Beim Kopieren der Abhängigkeitseigenschaften des Objekts kopiert diese Methode Ausdrücke (die möglicherweise nicht mehr aufgelöst werden können), jedoch keine Animationen oder ihre aktuellen Werte.

(Geerbt von Freezable)
CloneCore(Freezable)

Macht die Instanz zu einem Klon (deep copy) der angegebenen Freezable Basiseigenschaftswerte (nicht animiert).

(Geerbt von Freezable)
CloneCurrentValue()

Erstellt einen modifizierbaren Klon (deep copy) der Freezable aktuellen Werte.

(Geerbt von Freezable)
CloneCurrentValueCore(Freezable)

Macht die Instanz zu einem modifizierbaren Klon (deep copy) des angegebenen Freezable Werts mit aktuellen Eigenschaftswerten.

(Geerbt von Freezable)
CoerceValue(DependencyProperty)

Wandelt den Wert der angegebenen Abhängigkeitseigenschaft um. Dies wird erreicht, indem alle CoerceValueCallback in Eigenschaftsmetadaten für die Abhängigkeitseigenschaft angegebenen Funktionen aufgerufen werden, wie sie für den Aufruf DependencyObjectvorhanden sind.

(Geerbt von DependencyObject)
CreateInstance()

Initialisiert eine neue Instanz der Freezable-Klasse.

(Geerbt von Freezable)
CreateInstanceCore()

Erstellt eine neue Instanz der WindowChrome Klasse.

Equals(Object)

Bestimmt, ob ein bereitgestelltes DependencyObject Element dem aktuellen DependencyObjectentspricht.

(Geerbt von DependencyObject)
Freeze()

Macht das aktuelle Objekt unveränderlich und legt seine IsFrozen Eigenschaft auf true.

(Geerbt von Freezable)
FreezeCore(Boolean)

Macht das Freezable Objekt unveränderlich oder prüft, ob es unveränderlich gemacht werden kann.

(Geerbt von Freezable)
GetAsFrozen()

Erstellt eine fixierte Kopie der Freezablebasisbasierten (nicht animierten) Eigenschaftswerte. Da die Kopie fixiert ist, werden alle fixierten Unterobjekte per Verweis kopiert.

(Geerbt von Freezable)
GetAsFrozenCore(Freezable)

Macht die Instanz zu einem fixierten Klon der angegebenen Freezable Basiseigenschaft (nicht animierte) Eigenschaftswerte.

(Geerbt von Freezable)
GetCurrentValueAsFrozen()

Erstellt eine fixierte Kopie der Freezable aktuellen Eigenschaftswerte. Da die Kopie fixiert ist, werden alle fixierten Unterobjekte per Verweis kopiert.

(Geerbt von Freezable)
GetCurrentValueAsFrozenCore(Freezable)

Macht die aktuelle Instanz zu einem fixierten Klon des angegebenen Freezable. Wenn das Objekt animierte Abhängigkeitseigenschaften aufweist, werden die aktuellen animierten Werte kopiert.

(Geerbt von Freezable)
GetHashCode()

Ruft einen Hashcode für diese DependencyObjectab.

(Geerbt von DependencyObject)
GetIsHitTestVisibleInChrome(IInputElement)

Ruft den Wert der IsHitTestVisibleInChrome angefügten Eigenschaft aus dem angegebenen Eingabeelement ab.

GetLocalValueEnumerator()

Erstellt einen speziellen Enumerator, um zu bestimmen, welche Abhängigkeitseigenschaften lokal festgelegte Werte für diese DependencyObjectEigenschaft haben.

(Geerbt von DependencyObject)
GetResizeGripDirection(IInputElement)

Ruft den Wert der ResizeGripDirection angefügten Eigenschaft aus dem angegebenen Eingabeelement ab.

GetType()

Ruft die Type der aktuellen Instanz ab.

(Geerbt von Object)
GetValue(DependencyProperty)

Gibt den aktuellen effektiven Wert einer Abhängigkeitseigenschaft für diese Instanz einer .DependencyObject

(Geerbt von DependencyObject)
GetWindowChrome(Window)

Ruft den Wert der WindowChrome angefügten Eigenschaft aus dem angegebenen Windowab.

InvalidateProperty(DependencyProperty)

Wertet den effektiven Wert für die angegebene Abhängigkeitseigenschaft erneut aus.

(Geerbt von DependencyObject)
MemberwiseClone()

Erstellt eine flache Kopie der aktuellen Object.

(Geerbt von Object)
OnChanged()

Wird aufgerufen, wenn das aktuelle Freezable Objekt geändert wird.

(Geerbt von Freezable)
OnFreezablePropertyChanged(DependencyObject, DependencyObject, DependencyProperty)

Dieses Mitglied unterstützt die Windows Presentation Foundation (WPF)-Infrastruktur und ist nicht für die direkte Verwendung aus Ihrem Code vorgesehen.

(Geerbt von Freezable)
OnFreezablePropertyChanged(DependencyObject, DependencyObject)

Stellt sicher, dass geeignete Kontextzeiger für ein DependencyObjectType soeben festgelegtes Datenelement eingerichtet werden.

(Geerbt von Freezable)
OnPropertyChanged(DependencyPropertyChangedEventArgs)

Setzt die DependencyObject Implementierung OnPropertyChanged(DependencyPropertyChangedEventArgs) außer Kraft, um auch alle Changed Handler als Reaktion auf eine sich ändernde Abhängigkeitseigenschaft vom Typ Freezableaufzurufen.

(Geerbt von Freezable)
ReadLocalValue(DependencyProperty)

Gibt den lokalen Wert einer Abhängigkeitseigenschaft zurück, sofern vorhanden.

(Geerbt von DependencyObject)
ReadPreamble()

Stellt sicher, dass der Freezable Zugriff über einen gültigen Thread erfolgt. Erber von Freezable müssen diese Methode am Anfang einer API aufrufen, die Datenmmber liest, die keine Abhängigkeitseigenschaften sind.

(Geerbt von Freezable)
SetCurrentValue(DependencyProperty, Object)

Legt den Wert einer Abhängigkeitseigenschaft fest, ohne die Wertquelle zu ändern.

(Geerbt von DependencyObject)
SetIsHitTestVisibleInChrome(IInputElement, Boolean)

Legt den Wert der IsHitTestVisibleInChrome angefügten Eigenschaft für das angegebene Eingabeelement fest.

SetResizeGripDirection(IInputElement, ResizeGripDirection)

Legt den Wert der ResizeGripDirection angefügten Eigenschaft für das angegebene Eingabeelement fest.

SetValue(DependencyProperty, Object)

Legt den lokalen Wert einer Abhängigkeitseigenschaft fest, die durch den Bezeichner der Abhängigkeitseigenschaft angegeben wird.

(Geerbt von DependencyObject)
SetValue(DependencyPropertyKey, Object)

Legt den lokalen Wert einer schreibgeschützten Abhängigkeitseigenschaft fest, die durch den DependencyPropertyKey Bezeichner der Abhängigkeitseigenschaft angegeben wird.

(Geerbt von DependencyObject)
SetWindowChrome(Window, WindowChrome)

Legt den Wert der WindowChrome angefügten Eigenschaft für die angegebene .Window

ShouldSerializeProperty(DependencyProperty)

Gibt einen Wert zurück, der angibt, ob Serialisierungsprozesse den Wert für die bereitgestellte Abhängigkeitseigenschaft serialisieren sollen.

(Geerbt von DependencyObject)
ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.

(Geerbt von Object)
VerifyAccess()

Erzwingt, dass der aufrufende Thread Zugriff auf diesen DispatcherObjectThread hat.

(Geerbt von DispatcherObject)
WritePostscript()

Löst das Changed Ereignis für die Freezable Methode aus und ruft es OnChanged() auf. Klassen, die von Freezable dieser Methode abgeleitet werden, sollten am Ende einer API aufgerufen werden, die Klassenmmber ändert, die nicht als Abhängigkeitseigenschaften gespeichert sind.

(Geerbt von Freezable)
WritePreamble()

Überprüft, ob der Freezable Zugriff nicht fixiert ist und über einen gültigen Threadingkontext darauf zugegriffen wird. Freezable Vererbungen sollten diese Methode am Anfang einer API aufrufen, die in Datenmmber schreibt, die keine Abhängigkeitseigenschaften sind.

(Geerbt von Freezable)

Ereignisse

Name Beschreibung
Changed

Tritt auf, wenn das Freezable darin enthaltene Objekt geändert wird.

(Geerbt von Freezable)

Gilt für: