获取父用户控件WPF C#的名称

时间:2013-07-12 20:20:24

标签: c# wpf user-controls

我可以访问用户控件A.我想获得有关用户控件C的信息。有没有办法在WPF中执行此操作?结构基本上就是你所看到的。用户控件D是功能区,C是功能区上的选项卡,B和A是C的内容。我似乎无法访问C.我尝试使用A的Parent属性但它似乎没有给出我关于C的信息。

enter image description here

3 个答案:

答案 0 :(得分:15)

尝试使用VisualTreeHelper.GetParent或使用递归函数here

答案 1 :(得分:1)

也许您可以尝试将父级转换为UserControl C,如下所示:

(this.Parent as UserControlC).YourProperty

答案 2 :(得分:-1)

在Loaded事件处理程序中使用Window.GetWindow(this)方法。

public MainView()
{
    InitializeComponent();

    this.Loaded += new RoutedEventHandler(MainView_Loaded);
}

void MainView_Loaded(object sender, RoutedEventArgs e)
{
    Window parentWindow = Window.GetWindow(this);

    ...
}