在vb.net中,使用这样的方式绑定控件,会有问题,记录位置(BindingManageBase.Postion位置变化)的变化并无法实现文本框内容显示当前记录位置的信息:
'完成连接数据库和填充数据
sqlConn = New SqlConnection("data source=(local);database=JWInfo;integrated security=SSPI")
sqlcmd = New SqlCommand("select * from 用户", sqlConn)
sqlDa = New SqlDataAdapter(sqlcmd)
ds = New DataSet()
sqlDa.Fill(ds, "用户")
TextBox1.DataBindings.Add("text", ds.Tables("用户"), "用户名")
TextBox2.DataBindings.Add("text", ds.Tables("用户"), "密码")
TextBox3.DataBindings.Add("text", ds.Tables("用户"), "用户类型编号")
TextBox4.DataBindings.Add("text", ds.Tables("用户"), "启用日期")
bindingManageBase = Me.BindingContext(ds, "用户")
bmData.Position = 0
但是如果这么绑定,则修改记录位置,就能实现文本框内容跟着改变,书上说这两种方式都可以的,但是实际上,只有下面的方式是可以的,难道上面那种绑定不可以?哪位高手帮忙解答一下?谢过了先!
TextBox1.DataBindings.Add("Text", ds, "用户.用户名")
TextBox2.DataBindings.Add("Text", ds, "用户.密码")
TextBox3.DataBindings.Add("Text", ds, "用户.用户类型编号")
TextBox4.DataBindings.Add("Text", ds, "用户.启用日期")
书上说如果Add方法的第二个参数是DataSet,则第三个参数为“表名.字段名”,如果第二个参数是Table,则第三个参数就直接写字段名。