2016-04-27 102 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