我需要知道如何将用户对象 dataprovider 绑定到 datagridcombobox,其中数据提供者调用视图模型中的一个方法,该方法从数据库中获取数据 ana 放在 observalbe 集合市场中,我想在用户可以的 datagridcombobox 列中显示这些市场在添加或编辑数据行时选择市场。
我已经看到了如何将数据对象提供程序与枚举一起使用的示例,但这不是我的情况,所以请举个例子。
谢谢
它非常易于使用ObjectDataProvider
,只需传入要调用的类和方法名。
对象数据提供者:
xmlns:data="clr-namespace:ViewModelnamespace"
<ObjectDataProvider x:Key="myData"
ObjectType="{x:Type ViewModelnamespace:MyViewModel}"
MethodName="GetData">
</ObjectDataProvider>
数据:
namespace ViewModelnamespace
{
public class MyViewModel
{
public ObservableCollection<SomeThing> GetData()
{
return //your data
}
}
}
用法:
<DataGrid>
<DataGrid.Columns>
<DataGridComboBoxColumn ItemsSource="{Binding Source={StaticResource myData}}" />
</DataGrid.Columns>
</DataGrid>