表单:1包含一个用户控件,在用户控件网格的单元格点击事件中我显示表单:2。当我更新表单中的值:2并关闭它时,表单:1中的用户控件网格应该刷新。 我做了同样的link尽管它没有产生任何错误,用户控件网格没有得到绑定!!!
请告诉我这是如何实现的。
答案 0 :(得分:4)
如果表单显示为模式,则在关闭对话框之前不会执行ShowDialog方法之后的代码。但是,当窗体显示为无模式时,Show方法后面的代码会在显示窗体后立即执行。
private void CellClicked()
{
Form2 form2 = new Form2();
form2.ShowDialog();
//Execution stops here until you close the form2.
myForm1Control.Values = form2.GetValues();
}
答案 1 :(得分:0)
我已使用委托
实现此功能在用户控件中声明委托,
public delegate void Delegate1(datatype param1,datatype param2, datatype param3);//should be similar to the method used to bind user control in form1
public Delegate1 RefreshGrid;
在用户控件的单元格单击事件中,在form2.ShowDialog()add
之后RefreshGrid(param1,param2,param3);
在intializecomponent()方法之后的form1的构造函数中添加
usercontrolID.RefreshGrid = MethodUsedToBindUserControl;