如何combobox 数据绑定??
combobox.Items.Clear();
dtTable = new DataTable();
strSQL = "select 栏位 from 表";
strResult = DBLink.executeQuery(strSQL, dtTable);
if (!strResult.Equals(""))
{
MessageBox.Show("查询时发生异常!");
}
else
for (int i = 0; i <= dtTable.Rows.Count - 1; i++)
combobox.Items.Add(dtTable.Rows[i][0].ToString());
dtTable.Dispose();
dtTable = null。
WPF中提供了数据绑定的功能,操作起来很方便,集合类的控件几乎都可以用数据源来进行数据的绑定,下面操作一下下拉列表框控件ComboBox控件的数据绑定操作。
要绑定到ComboBox控件的自定义类:
public class LocationRoad
{
public int ID { set; get; }
public string Code { set; get; }
public string Info { set; get; }
}
建立数据源,就将此数据集合当作数据源绑定到ComboBox:
///
/// 当ComboBox选中项更改时发生
///
private LocationRoad _selectLocation;
public LocationRoad SelectLocation
{
get
{
return this._selectLocation;
}
set
{
this._selectLocation = value;
if (this.PropertyChanged != null)
PropertyChanged(this, new PropertyChangedEventArgs("SelectLocation"));
}
}
private ObservableCollection _locationRoad = null;
public ObservableCollection LocationSource
{
get
{
if (this._locationRoad == null)
{
this._locationRoad = new ObservableCollection() {
new LocationRoad() { ID = 1, Code = "NGQ", Info = "南岗区" },
new LocationRoad() { ID = 2, Code = "DLQ", Info = "道里区" },
new LocationRoad() { ID = 3, Code = "DWQ", Info = "道外区" },
new LocationRoad() { ID = 4, Code = "PFQ", Info = "平房区" },
new LocationRoad() { ID = 5, Code = "XFQ", Info = "香坊区" },
};
}
return this._locationRoad;
}
set
{
this._locationRoad = value;
if (this.PropertyChanged != null)
PropertyChanged(this, new PropertyChangedEventArgs("LocationSource"));
}
}
string sql = "select * from 表";//需要绑定的列的sql语句
SqlDataAdapteradapter = new SqlDataAdapter(sql, sql连接对象(conn));//创建DataAdapter数据适配器实例
adapter.Fill(ds, "虚拟列名");//fill方法填充
cbType.DisplayMember = "需要读取的列1(name)"; //显示到comboBox的值
cbType.ValueMember = "需要读取的列2(id)"; //comboBox真正的值
cbType.DataSource = ds.Tables["虚拟列名"];//绑定数据源
语法是这样差不多,希望可以帮到您