2013-06-25 176 views
0

我試圖將PropertyGrid中的組合框編輯器綁定到列表。綁定與父DataContext

<dxprg:PropertyGridControl SelectedObject="{Binding SelectedEmployee}"> 
    <dxprg:PropertyDefinition Path="EmployeeCountryID"> 
      <dxprg:PropertyDefinition.EditSettings> 
       <dxe:ComboBoxEditSettings 
        ItemsSource="{Binding Path=DataContext.Countries, ElementName=rootWindow}" 
        ValueMember="CountryId" DisplayMember="CountryName" />                 
      </dxprg:PropertyDefinition.EditSettings> 
    </dxprg:PropertyDefinition> 
</dxprg:PropertyGridControl> 

該示例來自第三方控件,但問題可能只是一般性的。 「rootWindow」DataContext已被設置爲一個ViewModel,它擁有一個屬性列表(國家),我想要ItemsSourceCombobox中。

我試圖通過將Combobox ItemsSource設置爲rootWindow.DataContext.Countries屬性來訪問該列表,但我沒有收到任何數據。 也嘗試了所有RelativeSource FindAncestor綁定,但沒有數據出現。

爲什麼我不能通過這樣的給定元素的DataContext綁定?

+0

您是否嘗試在調試器下運行應用程序並檢查輸出窗口是否存在任何WPF綁定錯誤? – sthotakura

+0

這已經解決了。問題不在於綁定,而是與我如何定義第三方控件相關:與EditSettings相反,我應該定義CellTemplate - > DataTemplate。 – Nuts

+0

很酷。請將您的評論寫爲答案並關閉它。 – sthotakura

回答

0

這樣就解決了。問題不在於綁定,而是與我如何定義第三方控件相關:與EditSettings相反,我應該定義CellTemplate - > DataTemplate。