在我的WPF窗口,我宣佈:組合框在DataGridTemplateColumn。綁定不工作
public List<Brand> BrandList;
,然後在構造函數中,列表中填充:
BrandList = new List<Brand>(EntityDao.GetInstance().GetProducts().Select(p => p.Brand).Distinct().OrderBy(b => b.Name));
在我的XAML代碼
然後,我宣佈一個DataGrid:
<DataGrid <!-- Properties omitted--> >
<DataGrid.Columns>
<DataGridTemplateColumn>
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<ComboBox ItemsSource="{Binding Path=BrandList, RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type Window}}}" />
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
<!-- Other columns omitted -->
</DataGrid.Columns>
</DataGrid>
問題是我的組合框是空的。通過調試,我已驗證了BrandList
對象保存超過80個目的,所有這些都限定的ToString()
方法。
數據網格的的ItemsSource是一個簡單的ObservableCollection。
任何想法?
你得到任何調試信息,如果你設置的你的綁定到高?: <組合框的ItemsSource =「{綁定路徑= BrandList,的RelativeSource = {的RelativeSource的TRACELEVEL FindAncestor,AncestorType = {x:Type Window}},PresentationTraceSources.TraceLevel = High}「/> – rhe1980 2013-03-05 13:27:29
使用像WPF檢查器這樣的工具,可以檢查綁定是否有錯誤,當您測試很多事情時可能會有所幫助。 .. – mlemay 2013-03-05 13:30:44
我收到很多以 System.Windows.Data結尾的警告:69:BindingExpression(hash = 33514934):找到數據上下文元素:(OK) –
2013-03-05 13:31:34