FrameworkPropertyMetadata.AffectsParentArrange Propriété

Définition

Obtient ou définit une valeur qui indique si une propriété de dépendance peut affecter la passe de réorganisation de la disposition de son élément parent durant les opérations du moteur de disposition.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

Valeur de propriété

true si la propriété de dépendance sur laquelle ces métadonnées existent peut affecter la passe de réorganisation spécifiquement sur son élément parent ; sinon, false.true if the dependency property on which this metadata exists potentially affects the arrange pass specifically on its parent element; otherwise, false. Par défaut, il s’agit de false.The default is false.

Exceptions

Les métadonnées ont déjà été appliquées à une opération de propriété de dépendance. Les métadonnées sont donc sealed et les propriétés des métadonnées ne peuvent pas être définies.The metadata has already been applied to a dependency property operation, so that metadata is sealed and properties of the metadata cannot be set.

Remarques

FrameworkElement et FrameworkContentElement incluent une implémentation de OnPropertyChanged qui analyse les modifications de valeur effectives pour toutes les propriétés de dépendance qui existent sur un élément.FrameworkElement and FrameworkContentElement include an implementation of OnPropertyChanged that monitors effective value changes to all dependency properties that exist on an element. Dans le cadre de cette logique, les propriétés de dépendance qui modifient la valeur effective et ont des métadonnées avec AffectsParentArrange défini sur true initieront une demande différée afin d’invalider les éléments visuels de l’élément parent.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.

En règle générale, vous n’avez pas besoin de signaler les modifications d’une propriété de FrameworkElement à un élément parent à l’aide de AffectsParentArrange, car l’élément lui-même aurait déjà sa propre AffectsArrange en tant que true.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. Cela est généralement suffisant, car les modifications apportées à l’élément enfant initialisent généralement une organisation parente lorsque cela est approprié.That is usually sufficient, because changes in the child element generally initiate a parent arrange when appropriate. AffectsParentArrange est parfois utilisé pour une classe dérivée FrameworkContentElement.AffectsParentArrange is sometimes used for a FrameworkContentElement derived class. Dans ce cas, l’élément enfant définit une propriété, mais une FrameworkContentElement classe dérivée ne contrôle pas son propre rendu.In this case, the child element sets a property, but a FrameworkContentElement derived class does not control its own rendering. Le rendu est géré par un élément parent FrameworkElement qui sert d’hôte de contenu.The rendering is handled by a FrameworkElement parent element that serves as the content host. Par exemple, une modification apportée à la valeur de la FixedPage.Left propriété jointe par un élément enfant invalide l’organisation du parent, car la position de l’enfant dans le parent doit être modifiée.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. Par conséquent, la propriété jointe FixedPage.Left a des métadonnées où AffectsParentArrange est true.Therefore, the FixedPage.Left attached property has metadata where AffectsParentArrange is true. Un autre exemple est Padding; Lorsque cette propriété change, le parent peut modifier le positionnement de l’enfant, en fonction de l’espace disponible.Another example is Padding; when this property changes, the parent might change the positioning of the child, depending on available space.

Étant donné que cette implémentation au niveau de l’infrastructure WPF est déjà en place, vous n’avez généralement pas besoin de rechercher des propriétés de dépendance avec AffectsParentArrange, sauf si vous remplacez ou modifiez substantiellement le comportement de disposition au niveau de l’infrastructure WPF.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.

Les implémentations de OnPropertyChanged personnalisées peuvent choisir un comportement similaire pour les modifications de propriété de dépendance où AffectsParentArrange est true.Custom OnPropertyChanged implementations might choose to have similar behavior for dependency property changes where AffectsParentArrange is true.

Les propriétés sur toutes les classes dérivées de PropertyMetadata sont généralement définies dans le modèle objet en lecture-écriture.Properties on any derived classes of PropertyMetadata are typically defined in the object model as read-write. C’est pourquoi ils peuvent être ajustés après l’initialisation de l’instance.This is so they can be adjusted after initialization of the instance. Toutefois, une fois que les métadonnées sont consommées dans le cadre d’un appel à Register, AddOwnerou OverrideMetadata, le système de propriétés scelle l’instance de métadonnées et les propriétés qui transmettent les caractéristiques des métadonnées sont maintenant considérées comme immuables.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. Toute tentative de définition de cette propriété une fois que IsSealed est true sur cette instance de métadonnées lève une exception.Attempting to set this property after IsSealed is true on this metadata instance will raise an exception.

Utilisation de texte XAMLXAML Text Usage

Les membres de cette classe ne sont généralement pas utilisés dans XAMLXAML.Members of this class are not typically used in XAMLXAML.

S’applique à

Voir aussi