FrameworkPropertyMetadata.AffectsParentMeasure Eigenschap

Definitie

Hiermee wordt een waarde opgehaald of ingesteld die aangeeft of een afhankelijkheidseigenschap mogelijk van invloed is op de metingsdoorgang van de indeling van het bovenliggende element tijdens bewerkingen van de indelingsengine.

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

Waarde van eigenschap

true als de afhankelijkheidseigenschap waarop deze metagegevens bestaan, mogelijk van invloed is op de meting die specifiek op het bovenliggende element wordt doorgegeven; anders, false. De standaardwaarde is false.

Uitzonderingen

De metagegevens zijn al toegepast op een afhankelijkheidseigenschapsbewerking, zodat metagegevens worden verzegeld en eigenschappen van de metagegevens niet kunnen worden ingesteld.

Opmerkingen

FrameworkElement en FrameworkContentElement voeg een implementatie toe van OnPropertyChanged die effectieve waardewijzigingen controleert op alle afhankelijkheidseigenschappen die op een element aanwezig zijn. Als onderdeel van deze logica starten afhankelijkheidseigenschappen die de effectieve waarde wijzigen en metagegevens hebben ingesteld AffectsParentMeasuretrue een uitgestelde aanvraag om de visuals voor het bovenliggende element ongeldig te maken. Omdat deze WPF implementatie op frameworkniveau al is geïmplementeerd, hoeft u doorgaans niet te zoeken naar afhankelijkheidseigenschappen met AffectsParentMeasure, tenzij u het indelingsgedrag op WPF frameworkniveau aanzienlijk vervangt of wijzigt.

Over het algemeen hoeft u geen wijzigingen van een FrameworkElement eigenschap aan een bovenliggend element AffectsParentMeasure te rapporteren, omdat het element zelf al een eigen AffectsMeasure element zou hebben als true. Dat is meestal voldoende, omdat wijzigingen in het onderliggende element in het algemeen een bovenliggende meting pas initiëren wanneer dit van toepassing is. AffectsParentMeasure wordt soms gebruikt voor een FrameworkContentElement afgeleide klasse. In dit geval stelt het onderliggende element een eigenschap in, maar een FrameworkContentElement afgeleide klasse heeft geen eigen rendering. De rendering wordt verwerkt door een FrameworkElement bovenliggend element dat fungeert als de inhoudshost. Een wijziging in de waarde van de Paragraph.KeepWithNext eigenschap door een onderliggend element maakt bijvoorbeeld de meting van het bovenliggende element ongeldig, omdat de relatieve afstand van alinea's kan veranderen en de grootte van de inhoudshost kan vergroten of verkleinen. Daarom heeft de Paragraph.KeepWithNext eigenschap metagegevens waar AffectsParentMeasure zich bevindt true.

Inhoudshostelementen zoeken ook vaak naar wijzigingen in afhankelijkheidseigenschappen, waar AffectsParentMeasure dat is true, als onderdeel van de renderinglogica van de inhoudshost. Het element moet bijvoorbeeld TextBox reageren op bepaalde wijzigingen in tekst die mogelijk vereisen dat het begrenzingsvak van het TextBox zelf wordt gewijzigd.

Aangepaste OnPropertyChanged implementaties kunnen ervoor kiezen om vergelijkbaar gedrag te hebben voor afhankelijkheidseigenschapswijzigingen.AffectsParentMeasuretrue

Eigenschappen voor eventuele afgeleide klassen worden PropertyMetadata doorgaans gedefinieerd in het objectmodel als lezen/schrijven. Dit is zodat ze na de initialisatie van het exemplaar kunnen worden aangepast. Nadat de metagegevens echter worden gebruikt als onderdeel van een aanroep naar Register, AddOwnerof OverrideMetadata, zal het eigenschappensysteem dat metagegevensexemplaren en eigenschappen die de specifieke kenmerken van de metagegevens overbrengen, nu als onveranderbaar beschouwd worden. Als u deze eigenschap probeert in te stellen nadat IsSealedtrue deze zich op dit metagegevensexemplaren bevindt, wordt er een uitzondering gegenereerd.

XAML-tekstgebruik

Leden van deze klasse worden doorgaans niet gebruikt in XAML.

Van toepassing op

Zie ook