让我解释一下我的挑战。我有一个数据集,其数据表分配给datacontext。其中一个领域是一个类别。所有类别名称都在另一个数据表中(一对多关系)。
我希望组合框能够使用datacontext数据表中正确选择的值显示数据表类别中的所有名称。因此,如果我更改类别,将使用组合框中的selectedValue更新datatable1。
我读了一些关于ObjectDataProvider的东西,但我没有让它工作。我怎样设法让这个工作?
答案 0 :(得分:2)
像这样使用
<UserControl x:Class="ButtonEffects.UserControl1"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Height="300" Width="300" Name="uc">
<Grid>
<ComboBox ItemsSource="{Binding ElementName=uc,Path=Categories}"
DisplayMemberPath="CategoryName" SelectedValuePath="Id"
SelectedValue="{Binding SelectedCategoryId}"/>
</Grid>
</UserControl>
类别是代码隐藏中的属性。将从类别表中填充itemsouce,并且您的selectedvalue将在datacontext数据表中更新。希望这有帮助
修改强>
如果您的datacontext是数据集,那么selectedvalue应该是
SelectedValue="{Binding datatable1/SelectedCategoryId}"