且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

ComboBox 绑定到数据表中一个列的问题

更新时间:2022-06-15 12:58:06

数据表: Users
字段 ID ,类型 int
字段 UserName, 类型 string
字段 Group, 类型 int. (2 代表 管理员, 1 代表 认证用户 , 0 代表 注册用户)

在一个winform上有一个 bindingNavigator, bindingNavigator1
一个 bindingSource  bindingSource1.
一个textbox txtName.
一个 ComboBox cmbGroup.
cmbGroup的 dropdownstyle是dropdownlist.
Items集合里面有 注册用户,  认证用户, 管理员

数据绑定的设置如下:

//
取数据表
  DataTable dtUsers = GetDataTableBySQL("select * from Users");<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

  bindingSource1.DataSource = dtUsers;

  bindingNavigator1.bindingSource = bingdingSource1;

  txtName.DataBindings.Add("Text", bindingSource1, "Name");

  cmbGroup.DataBindings.Add("SelectedIndex", bindingSource1, "Group");

这样绑定好后, 运行界面上显示的数据都是正常的, cmbGroup能够显示正确的项目.
但有一个问题, bindingNavigator 不能导航(取消 cmbGroup的绑定,就能正常导航了).
如果删除当前记录 则能导航, 但 txtName和 cmbGroup的绑定却失效了.

不知道是什么原因,难道是不能绑定 ComboBox的 SelectedIndex ?