我有一个名为MainForm
的MDI父表单和2个子表单WorkForm和UserOp
。
WorkForm
datagridview
users
显示datasource
,其BindingList
为BindingList
。List
来自type user
} MainForm mainForm;
public WorkForm(MainForm main)
{
InitializeComponent();
this.mainForm = main;
}
并且列表在父级中声明,并在此使用refrence访问,即如果我对此列表进行任何更改,最终它将更改父级列表。这是代码是如何完成的。
UserOp
同样可以从DataError
访问。现在,如果我从列表中删除用户并且WorkForm已经打开,那么datagrid视图会提供默认错误,这意味着我必须处理BindingList
事件。我再次更新datagrid datasource
并再次将其分配给program.cs
。
这解决了错误的问题但是在Specified argument was out of the range of valid values.
Parameter name: e.RowIndex
之后有时并不是所有时间都会显示异常
这种情况发生在删除后我只是将鼠标悬停在表单上,而它是非活动的,如果表单被点击,那么没有异常。
读取Application.Run(new MainForm());
在{{1}}行
答案 0 :(得分:1)
有些时候RowIndex
可以是事件中集合的-1甚至等于Count/Length
。
你应该检查一下:)