2016-04-27 103 views
2
MainPage.xaml 

<Grid Background="{ThemeResource ApplicationPageBackgroundThemeBrush}"> 
    <Grid x:Name="GridA"> 
     <Grid x:Name="GridB"/> 
    </Grid> 
</Grid> 

有可能得到GridB如何獲取元素的父級?

GridB父這就是我想要做的

//Null 
Panel parent1 = GridB.Parent as Panel; 

//Null 
Panel parent2 = VisualTreeHelper.GetParent(GridB) as Panel; 

他們全部返回null。

有什麼想法?

+1

的父母你的'GridB'是'Grid',而不是一個'Panel'。 –

+0

嘗試Grid parent1 = GridB.Parent as Grid –

+0

我嘗試了它,但parent1也返回null。 – aiur

回答

7

使用VisualTreeHelper.GetParent方法,但作爲UIElementPanel這樣的:

var parent = VisualTreeHelper.GetParent(GridB) as UIElement; 
string pName = (parent as Grid).Name; //GridA