如何将ComboBox与DataTable绑定

Nik*_*lin 13 data-binding wpf

我有以下列的DataTable:

id,Name,Description,ParentId

并且想要创建一个WPF控件(.NET 4.0框架),它实现了一个组合框,它显示绑定到id值的名称.因此,当用户选择组合框中显示的名称时,后面的逻辑必须检索其id值.

如果有人能够展示上述方法,我将非常感激.

Ome*_*viv 28

像这样:

在您的XAML文件中,输入:

 <ComboBox x:Name="myComboBox" DisplayMemberPath="Name" SelectedValuePath="id" />
Run Code Online (Sandbox Code Playgroud)

在您的代码后面,放:

myComboBox.ItemsSource = myTable;
Run Code Online (Sandbox Code Playgroud)

(myTable是对你提到的表的引用)

然后,您可以使用以下表达式在组合框中获取当前所选人员的ID:

NameComboBox.SelectedValue
Run Code Online (Sandbox Code Playgroud)

  • DataTable无法直接绑定.您必须从myTable.AsEnumerable()绑定myTable.DefaultView或IEnumerable. (12认同)
  • 只有`myComboBox.ItemsSource = myTable.DefaultView;`有效. (11认同)