FrameworkPropertyMetadata.AffectsParentMeasure Eigenschaft

Definition

Dient zum Abrufen oder Festlegen eines Werts, der angibt, ob eine Abhängigkeitseigenschaft möglicherweise den Bemessungsdurchgang des übergeordneten Elements während Layout-Engine-Vorgängen beeinflusst.Gets or sets a value that indicates whether a dependency property potentially affects the measure pass of its parent element's layout during layout engine operations.

public:
 property bool AffectsParentMeasure { bool get(); void set(bool value); };
public bool AffectsParentMeasure { get; set; }
member this.AffectsParentMeasure : bool with get, set
Public Property AffectsParentMeasure As Boolean

Eigenschaftswert

Boolean

true, wenn die Abhängigkeits Eigenschaft, für die diese Metadaten vorhanden sind, möglicherweise den Measure-Durchlauf speziell für das übergeordnete Element beeinflusst. Andernfalls false.true if the dependency property on which this metadata exists potentially affects the measure pass specifically on its parent element; otherwise, false. Der Standardwert lautet false.The default is false.

Ausnahmen

Die Metadaten wurden bereits auf einen Vorgang der Abhängigkeitseigenschaft angewendet, sodass Metadaten versiegelt sind und keine Eigenschaften für Metadaten festgelegt werden können.The metadata has already been applied to a dependency property operation, so that metadata is sealed and properties of the metadata cannot be set.

Hinweise

FrameworkElement und FrameworkContentElement enthalten eine Implementierung von OnPropertyChanged, mit der effektive Wertänderungen an allen in einem Element vorhandenen Abhängigkeits Eigenschaften überwacht werden.FrameworkElement and FrameworkContentElement include an implementation of OnPropertyChanged that monitors effective value changes to all dependency properties that exist on an element. Im Rahmen dieser Logik wird durch Abhängigkeits Eigenschaften, die einen effektiven Wert ändern und Metadaten aufweisen, bei denen AffectsParentMeasure auf true festgelegt ist, eine verzögerte Anforderung initiiert, um die visuellen Elemente für das übergeordnete Element ungültig zu machen.As part of that logic, dependency properties that change effective value and have metadata with AffectsParentMeasure set to true will initiate a deferred request to invalidate the visuals for the parent element. Da diese Implementierung auf WPF-Frameworkebene bereits vorhanden ist, müssen Sie in der Regel keine Abhängigkeits Eigenschaften mit AffectsParentMeasure suchen, es sei denn, Sie ersetzen oder ändern das Layoutverhalten auf WPF-Frameworkebene.Because this WPF framework-level implementation is already in place, you typically do not need to look for dependency properties with AffectsParentMeasure unless you are substantially replacing or modifying the WPF framework-level layout behavior.

Im Allgemeinen ist es nicht erforderlich, Änderungen einer FrameworkElement-Eigenschaft mithilfe AffectsParentMeasure an ein übergeordnetes Element zu melden, da das Element selbst bereits seine eigene AffectsMeasure truehat.Generally, you do not need to report changes of a FrameworkElement property to a parent element using AffectsParentMeasure because the element itself would already have its own AffectsMeasure as true. Das ist in der Regel ausreichend, da Änderungen im untergeordneten Element in der Regel eine übergeordnete Maßübergabe auslösen, wenn dies angebracht ist.That is usually sufficient, because changes in the child element generally initiate a parent measure pass when appropriate. AffectsParentMeasure wird manchmal für eine FrameworkContentElement abgeleitete Klasse verwendet.AffectsParentMeasure is sometimes used for a FrameworkContentElement derived class. In diesem Fall legt das untergeordnete-Element eine Eigenschaft fest, aber eine FrameworkContentElement abgeleitete Klasse steuert nicht Ihr eigenes Rendering.In this case, the child element sets a property, but a FrameworkContentElement derived class does not control its own rendering. Das Rendering wird von einem FrameworkElement übergeordneten Element behandelt, das als Inhalts Host fungiert.The rendering is handled by a FrameworkElement parent element that serves as the content host. Beispielsweise wird durch eine Änderung am Wert der Paragraph.KeepWithNext-Eigenschaft durch ein untergeordnetes Element das Measure des übergeordneten Elements ungültig, da sich der relative Abstand von Absätzen ändern und die Größe des Inhalts Hosts erhöhen oder verringern kann.For instance, a change to the value of the Paragraph.KeepWithNext property by a child element invalidates measure of the parent, because the relative spacing of paragraphs might change and might increase or decrease the content host size. Daher verfügt die Paragraph.KeepWithNext-Eigenschaft über Metadaten, bei denen AffectsParentMeasure trueist.Therefore, the Paragraph.KeepWithNext property has metadata where AffectsParentMeasure is true.

Inhalts Host Elemente suchen häufig auch nach Änderungen in Abhängigkeits Eigenschaften, bei denen AffectsParentMeasure als Teil der Inhalts Host-Renderinglogik trueist.Content host elements also frequently look for changes in dependency properties where AffectsParentMeasure is true, as part of content host rendering logic. Beispielsweise muss das TextBox-Element auf bestimmte Änderungen innerhalb von Text reagieren, die ggf. erfordern, dass das umgebende Feld des TextBox selbst geändert werden kann.For instance, the TextBox element must respond to certain changes within text that might require that the bounding box of the TextBox itself be changed.

Benutzerdefinierte OnPropertyChanged Implementierungen können ein ähnliches Verhalten für Änderungen an Abhängigkeits Eigenschaften haben, bei denen AffectsParentMeasure trueist.Custom OnPropertyChanged implementations might choose to have similar behavior for dependency property changes where AffectsParentMeasure is true.

Eigenschaften für abgeleitete Klassen von PropertyMetadata werden in der Regel im Objektmodell als Lese-/Schreibzugriff definiert.Properties on any derived classes of PropertyMetadata are typically defined in the object model as read-write. So können Sie nach der Initialisierung der-Instanz angepasst werden.This is so they can be adjusted after initialization of the instance. Nachdem die Metadaten jedoch im Rahmen eines Aufrufes Register, AddOwneroder OverrideMetadataverarbeitet wurden, versiegelt das Eigenschaften System, dass die Metadateninstanz und die Eigenschaften, die die Einzelheiten der Metadaten vermitteln, jetzt als unveränderlich angesehen werden.However, after the metadata is consumed as part of a call to Register, AddOwner, or OverrideMetadata, the property system will seal that metadata instance and properties that convey the specifics of the metadata are now considered immutable. Wenn Sie versuchen, diese Eigenschaft festzulegen, nachdem IsSealed in dieser Metadateninstanz true ist, wird eine Ausnahme ausgelöst.Attempting to set this property after IsSealed is true on this metadata instance will raise an exception.

Verwendung von XAML-TextXAML Text Usage

Member dieser Klasse werden in der Regel nicht in XAMLXAMLverwendet.Members of this class are not typically used in XAMLXAML.

Gilt für:

Siehe auch