FrameworkPropertyMetadata.AffectsParentArrange FrameworkPropertyMetadata.AffectsParentArrange FrameworkPropertyMetadata.AffectsParentArrange FrameworkPropertyMetadata.AffectsParentArrange Property

Definition

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

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

Eigenschaftswert

true, wenn die Abhängigkeitseigenschaft, für die diese Metadaten vorhanden sind, möglicherweise die Anordnungsphase beeinflusst (insbesondere für das übergeordnete Element), andernfalls false.true if the dependency property on which this metadata exists potentially affects the arrange pass specifically on its parent element; otherwise, false. Die Standardeinstellung ist 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

FrameworkElementund 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 den effektiven Wert ändern und AffectsParentArrange Metadaten haben true , bei denen auf 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 AffectsParentArrange set to true will initiate a deferred request to invalidate the visuals for the parent element.

Im Allgemeinen ist es nicht erforderlich, Änderungen an FrameworkElement einer Eigenschaft mit einem über AffectsParentArrange geordneten Element zu melden, da das Element selbst bereits über seine AffectsArrange eigene trueals verfügt.Generally, you do not need to report changes of a FrameworkElement property to a parent element using AffectsParentArrange because the element itself would already have its own AffectsArrange as true. Das ist in der Regel ausreichend, da Änderungen im untergeordneten Element im Allgemeinen eine übergeordnete anordnen initiieren, wenn dies angebracht ist.That is usually sufficient, because changes in the child element generally initiate a parent arrange when appropriate. AffectsParentArrangewird manchmal für eine FrameworkContentElement abgeleitete Klasse verwendet.AffectsParentArrange is sometimes used for a FrameworkContentElement derived class. In diesem Fall legt das untergeordnete-Element eine Eigenschaft fest, FrameworkContentElement aber eine 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 des Werts der FixedPage.Left angefügten-Eigenschaft durch ein untergeordnetes Element die Anordnung des übergeordneten Elements ungültig, da die Position des untergeordneten Elements im übergeordneten Element geändert werden muss.For instance, a change to the value of the FixedPage.Left attached property by a child element invalidates arrange of the parent, because the position of the child in the parent must be changed. Daher verfügt die FixedPage.Left angefügte-Eigenschaft über AffectsParentArrange Metadaten true, wobei den Wert hat.Therefore, the FixedPage.Left attached property has metadata where AffectsParentArrange is true. Ein weiteres Beispiel Paddingist. wenn diese Eigenschaft geändert wird, kann das übergeordnete Element die Positionierung des untergeordneten Elements ändern, je nach verfügbarem Speicherplatz.Another example is Padding; when this property changes, the parent might change the positioning of the child, depending on available space.

Da diese Implementierung der WPF-Frameworkebene bereits vorhanden ist, müssen Sie in der Regel keine Abhängigkeits Eigenschaften AffectsParentArrange mit suchen, es sei denn, Sie ersetzen oder ändern das Layoutverhalten der WPF-Frameworkebene erheblich.Because this WPF framework-level implementation is already in place, you typically do not need to look for dependency properties with AffectsParentArrange unless you are substantially replacing or modifying the WPF framework-level layout behavior.

Benutzer OnPropertyChanged definierte Implementierungen können ein ähnliches Verhalten für Änderungen an Abhängigkeits Eigenschaften AffectsParentArrange haben true, bei denen gleich ist.Custom OnPropertyChanged implementations might choose to have similar behavior for dependency property changes where AffectsParentArrange 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 Registervon, AddOwneroder OverrideMetadataverwendet werden, versiegelt das Eigenschaften System, dass die Metadateninstanz und die Eigenschaften, die die Besonderheiten 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 IsSealed fest true zulegen, nachdem auf dieser Metadateninstanz 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