2012-04-28 90 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 &代碼權利通常不需要訪問元素直接。你能提供更多關於一般問題或測試項目的信息來重現問題嗎?