在后面的代码中将ComboBox绑定到DataSet(无XAML)

时间:2011-05-16 04:45:24

标签: c# combobox datatable

如何在不使用XAML的情况下将组合框绑定到代码中的DataSet:

我尝试了以下操作,但我的所有组合框项目都是" System.Data.DataRowView"而不是实际值。有什么问题?

string str = @"SELECT * FROM FooTable";

da.SelectCommand = new SqlCeCommand(str, connection);
da.Fill(devDs, "FooTable");

dt = ds.Tables["FooTable"];

comboBox1.ItemsSource = devDt.DefaultView;

2 个答案:

答案 0 :(得分:2)

您必须设置DisplayMemberPath属性

combobox.DisplayMemberPath = "ColumnName"

答案 1 :(得分:0)

您可以使用comboBox1.DisplayMemberPath设置表格中的哪一列用于UI演示。

测试样本:

var dataTable = new DataTable();
dataTable.Columns.Add("Id", typeof(int));
dataTable.Columns.Add("Name", typeof(string));

dataTable.Rows.Add(1, "Test1");
dataTable.Rows.Add(2, "Test2");

comboBox1.ItemsSource = dataTable.DefaultView;
comboBox1.DisplayMemberPath = "Name";
相关问题