FrameworkElement.Parent Eigenschap
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Hiermee haalt u het logische bovenliggende element van dit element op.
public:
property System::Windows::DependencyObject ^ Parent { System::Windows::DependencyObject ^ get(); };
public System.Windows.DependencyObject Parent { get; }
member this.Parent : System.Windows.DependencyObject
Public ReadOnly Property Parent As DependencyObject
Waarde van eigenschap
Het logische bovenliggende element van dit element.
Voorbeelden
In het volgende voorbeeld ziet u code waarmee wordt gecontroleerd op het bovenliggende element en vervolgens eigenschapswaarden van het bovenliggende element worden gebruikt om eigenschappen in te stellen op het onderliggende element. In dit geval zijn dit eigenschappen die van invloed zijn op de renderinggrootte.
private void OnUIReady(object sender, System.EventArgs e)
{
LinePane.Width = ((StackPanel)LinePane.Parent).ActualWidth;
LinePane.Height = ((StackPanel)LinePane.Parent).ActualHeight;
DesignerPane.MouseLeave += new System.Windows.Input.MouseEventHandler(DesignerPane_MouseLeave);
this.SizeChanged += new SizeChangedEventHandler(Window1_SizeChanged);
}
Private Sub OnUIReady(ByVal sender As Object, ByVal e As System.EventArgs)
LinePane.Width = (CType(LinePane.Parent, StackPanel)).ActualWidth
LinePane.Height = (CType(LinePane.Parent, StackPanel)).ActualHeight
AddHandler DesignerPane.MouseLeave, AddressOf DesignerPane_MouseLeave
AddHandler SizeChanged, AddressOf Window1_SizeChanged
End Sub
Opmerkingen
Parent
null in gevallen waarin een element is geïnstantieerd, maar niet is gekoppeld aan een logische structuur die uiteindelijk verbinding maakt met het hoofdelement op paginaniveau of het toepassingsobject.
Houd er rekening mee dat het logische bovenliggende element van een element mogelijk kan veranderen, afhankelijk van de functionaliteit van uw toepassing en dat de waarde van deze eigenschap niet overeenkomt met die wijziging. Normaal gesproken krijgt u de waarde onmiddellijk voordat u deze nodig hebt.
Zie Trees in WPF voor meer informatie over het doorkruisen van logische structuur en de scenario's waarin het gebruik van Parent als een techniek van detectie van bovenliggende elementen geschikt is.
De eigenschapsengine berekent mogelijk alle eigenschapswaarden van een element opnieuw wanneer het opnieuw wordt uitgevoerd, omdat sommige eigenschappen waarden overnemen via de logische structuur. De DataContext wijziging die van toepassing is op bindingen, kan ook worden gewijzigd wanneer elementen opnieuw worden gepagineerd.
Het wijzigen van het bovenliggende element wordt meestal alleen uitgevoerd door verzamelingen te bewerken, met behulp van speciale methoden voor toevoegen of verwijderen, of door inhoudseigenschappen van elementen in te stellen.
Het meest voorkomende scenario voor het gebruik van de Parent eigenschap is om een verwijzing te verkrijgen en vervolgens verschillende FrameworkElement eigenschapswaarden van het bovenliggende item op te halen. Voor sjablonen is Parentde null sjabloon uiteindelijk . Als u dit punt wilt overlopen en wilt uitbreiden naar de logische structuur waarin de sjabloon daadwerkelijk wordt toegepast, gebruikt u TemplatedParent.
Houd er rekening mee dat deze eigenschap geen visuele structuuroverouders rapporteert in gevallen waarin deze verschillen van de logische boomstructuurouders. Bovenliggende elementen van visuele structuur zijn doorgaans niet belangrijk voor algemene toepassingscases, maar kunnen de gewenste bovenliggende elementen zijn voor bepaalde gevallen op visualniveau. Zie VisualTreeHelper.