2012-04-28 89 views
4

想知道是否有任何技巧在代码隐藏中访问嵌套控件?WPF无法访问嵌套控件

给予一定的XAML沿

<UserControl>  
    <textbox /> 
    <DataGrid Name="MyGrid"> 
     <Columns> 
      <Column field=ABC> 
       <EditType> 
        <ComboBox Name="myCombo1"/> 

我可以访问this.MyGrid行,但不能访问this.myCombo1!

回答

2

每次我碰到这个问题,我都可以通过使用x:Name而不是Name来解决这个问题。这可能不是你的问题,但尝试一下。

+0

很奇怪,不适合我!我正在使用vs2010 sp1,.net 4 – Kumar 2012-04-29 18:18:29

+0

@Kumar您给出的示例没有编译我缺少一些命名空间,或者不知道您使用的是什么控件,您能否给出一个更完整的示例进入UserControl并测试? – 2012-04-29 21:52:34

+0

该示例使用devx wpf控件,我可以上传更多,如果你有这些或愿意/能够安装他们的试用版本 – Kumar 2012-04-29 22:21:20

0

在简单情况下,你可以使用自己的名字访问元素,但看起来像组合框是DataTemplate中的一部分,你可以在使用VisualTreeHelper运行与可视化树工作,但如果你使用MVVM &代码权利通常不需要访问元素直接。你能提供更多关于一般问题或测试项目的信息来重现问题吗?