这两天写程序遇到一个好奇怪的问题:
假设一个WinForm窗体,包含一系列的控件,其中有一个CheckBox和一个DataGrid。
DataGrid用来显示数据库的数据列表,
此外的控件用来展示某条记录的明细,以及对数据的Add,Edit,Delete的操作。
于是我用了绑定
dataGrid1.SetDataBinding(dataSet,"BHQ");
checkBox1.DataBindings.Add("Checked",dataSet,"BHQ.BHQSFKT");
private void button1_Click(object sender, System.EventArgs e)
{
DataView myView = dataSet.Tables["BHQ"].DefaultView;
myView.AddNew();
this.BindingContext[dataSet,"BHQ"].Position = myView.Count - 1;
}
问题来了:this.BindingContext[dataSet,"BHQ"].Position = ... 这句话无效,仍然指向原先所在位置。
我把checkBox1的绑定语句删除后,这句话又有效了。百思不得其解。
假设一个WinForm窗体,包含一系列的控件,其中有一个CheckBox和一个DataGrid。
DataGrid用来显示数据库的数据列表,
此外的控件用来展示某条记录的明细,以及对数据的Add,Edit,Delete的操作。
于是我用了绑定
dataGrid1.SetDataBinding(dataSet,"BHQ");
checkBox1.DataBindings.Add("Checked",dataSet,"BHQ.BHQSFKT");private void button1_Click(object sender, System.EventArgs e)
{
DataView myView = dataSet.Tables["BHQ"].DefaultView;
myView.AddNew();
this.BindingContext[dataSet,"BHQ"].Position = myView.Count - 1;
}
我把checkBox1的绑定语句删除后,这句话又有效了。百思不得其解。
浙公网安备 33010602011771号