我有2个表格。第一个(Form1)有一个datagrid,第二个(Form2)有一个按钮来调用Form1中的函数来刷新数据网格。
我想要实现的是;单击form2中的按钮,form1 datagrid应刷新(此刷新将作为调用函数temp_proj的结果) 我怎样才能做到这一点?
答案 0 :(得分:0)
您可以创建一个存储form1实例的类。
您可以调用您的form1更新方法,如
来自另一个类的Globals.Form1.UpdateUI()。您可以在类中实例化,也可以将其存储为全局类中的变量。
答案 1 :(得分:0)
您可以在此处使用委托和事件概念。请考虑以下代码段:
Form1中的代码(具有网格的代码)
delegate void RefreshGrid();
// Method or event that opens form 2
public void OpenNextForm()
{
RefreshGrid EventRefresh = new RefreshGrid(RefreshGridEvent);
Form2 frm2Instance = new Form2();
frm2Instance.parentEvent = EventRefresh;
frm2Instance.Show();
}
Form2中的代码
public Delegate parentEvent;
public void Form2ButtonClick()
{
parentEvent.DynamicInvoke();
}
请注意以下事项: