C#
MainDataContext db = new MainDataContext();
var cat = from p in db.Categories
select p;
categoriesComboBox.ItemsSource = cat;
categoriesComboBox.SelectedValuePath = "ID";
categoriesComboBox.DisplayMemberPath = "CatName";
XAML
<Custom:DataGridComboBoxColumn
Width="1*" x:Name="categoriesComboBox"
Header="Category"
ItemsSource="{Binding}"
SelectedValueBinding="{Binding Path=Category}"
SelectedValuePath="ID"
DisplayMemberPath="CatName"
/>
现在我可以在加载时看到comobox中的名称...当我点击组合框时,下拉列表显示每个项目的MainDataContext.Category ...
当我点击任何下拉项目时..它选择正确的值并且......在组合框中显示我...
答案 0 :(得分:0)
您不应该自己设置categoriesComboBox.ItemsSource = cat;
,尝试使用数据上下文:categoriesComboBox.DataContext = cat
。无论如何,你已经在你的XAML中获得了所需的绑定。
希望这是你的实际问题(因为我无法理解你的问题是什么问题)。
修改:从您的图片中,您需要为您的类型DataTemplate
指定MainContext.Category
。没有它,使用默认模板,它只输出字符串表示。