创建新项目,创建MainFrom,并设为启动窗体,MainFrom.IsMdiContainer=true;
创建继承DevComponents.DotNetBar.Office2007Form的窗体Form1
创建窗体Form2
创建数据集,并创建一个连接至数据表的DataAdapter
在Form1上创建一个DataGridView并将数据绑定至一个有主键的表中。
在MainFrom中新建按钮But1
But1.Click代码:
Form1 frm1=new Form1();
frm1.MdiParent=this;
frm1.Show();
Form2 frm2=new Form2();
frm2.MdiParent=this;
frm2.Show();
运行项目。
按MainFrom中的But1启动frm1和frm2,然后关闭frm1,此时会连续出现错误提示,并且无法关闭。
错误提示内容:
DataGridView 中发生以下异常:
System.IndexOutOfRangeException: 索引0没有值。
在 System.Windows.Forms.CurrencyManager.get_Item(Int32 index)
在 System.Windows.Forms.DataGridView.DataGridViewDataConnection.GetError(Int32 rowIndex)
要替换此默认对话框,请处理DataError事件。
解决方案:Form2中的DataGridView的DataSource为数据集实例对象,DataMember为DataTable对象,再建一个相应的DataAdapter实例。