刷新表单中的用户控件:表单上的1:w​​informs中的2个结束事件C#

时间:2011-09-26 11:57:40

标签: c# .net winforms

表单:1包含一个用户控件,在用户控件网格的单元格点击事件中我显示表单:2。当我更新表单中的值:2并关闭它时,表单:1中的用户控件网格应该刷新。 我做了同样的link尽管它没有产生任何错误,用户控件网格没有得到绑定!!!

请告诉我这是如何实现的。

2 个答案:

答案 0 :(得分:4)

利用ShowDialog() method

的优势

如果表单显示为模式,则在关闭对话框之前不会执行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;
相关问题