FrameworkPropertyMetadata.AffectsParentArrange Egenskap
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Hämtar eller anger ett värde som anger om en beroendeegenskap potentiellt påverkar ordna passet för det överordnade elementets layout under layoutmotoråtgärder.
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
Egenskapsvärde
trueom beroendeegenskapen som dessa metadata finns på potentiellt påverkar ordna-passet specifikt på dess överordnade element; annars . false Standardvärdet är false.
Undantag
Metadata har redan tillämpats på en beroendeegenskapsåtgärd, så att metadata är förseglade och att egenskaperna för metadata inte kan anges.
Kommentarer
FrameworkElement och FrameworkContentElement inkludera en implementering av OnPropertyChanged som övervakar effektiva värdeändringar för alla beroendeegenskaper som finns i ett element. Som en del av den logiken initierar beroendeegenskaper som ändrar effektivt värde och har metadata med AffectsParentArrange inställt på true en uppskjuten begäran om att ogiltigförklara de visuella objekten för det överordnade elementet.
I allmänhet behöver du inte rapportera ändringar av en FrameworkElement egenskap till ett överordnat element med eftersom AffectsParentArrange själva elementet redan har sitt eget AffectsArrange som true. Det räcker vanligtvis eftersom ändringar i det underordnade elementet vanligtvis initierar en överordnad ordning när det är lämpligt.
AffectsParentArrange används ibland för en FrameworkContentElement härledd klass. I det här fallet anger det underordnade elementet en egenskap, men en FrameworkContentElement härledd klass styr inte sin egen återgivning. Renderingen hanteras av ett FrameworkElement överordnat element som fungerar som innehållsvärd. En ändring av värdet för den bifogade egenskapen av ett underordnat FixedPage.Left element ogiltigförklarar till exempel ordning för den överordnade egenskapen, eftersom positionen för det underordnade i den överordnade egenskapen måste ändras. Därför har den FixedPage.Left anslutna egenskapen metadata där AffectsParentArrange är true. Ett annat exempel är Padding; när den här egenskapen ändras kan den överordnade egenskapen ändra det underordnade objektets placering, beroende på tillgängligt utrymme.
Eftersom den här WPF implementeringen på ramverksnivå redan är på plats behöver du vanligtvis inte leta efter beroendeegenskaper med AffectsParentArrange om du inte väsentligen ersätter eller ändrar WPF layoutbeteende på ramverksnivå.
Anpassade OnPropertyChanged implementeringar kan välja att ha liknande beteende för beroendeegenskapsändringar där AffectsParentArrange är true.
Egenskaper för alla härledda klasser PropertyMetadata av definieras vanligtvis i objektmodellen som skrivskyddad. Detta gör att de kan justeras efter initieringen av instansen. Men när metadata har förbrukats som en del av ett anrop till Register, AddOwnereller OverrideMetadata, kommer egenskapssystemet att försegla att metadatainstansen och egenskaper som förmedlar detaljerna i metadata nu anses oföränderliga. Om du försöker ange den här egenskapen när IsSealed den finns true på den här metadatainstansen genereras ett undantag.
XAML-textanvändning
Medlemmar i den här klassen används vanligtvis inte i XAML.