我有一個GridView
在Liste_Form和Close_Form按鈕。刷新控件或重新加載窗體從其他形式的按鈕單擊事件處理程序
如何在Liste_Form中刷新Gridview
,當我單擊Close_Form上的按鈕時?
或重新加載Liste_Form。
我有一個GridView
在Liste_Form和Close_Form按鈕。刷新控件或重新加載窗體從其他形式的按鈕單擊事件處理程序
如何在Liste_Form中刷新Gridview
,當我單擊Close_Form上的按鈕時?
或重新加載Liste_Form。
你可以通過幾種方法來完成。我可能會建議一種方式是通過一個委託爲第二形態的構造:
Form2 myForm2 = new Form2(RefreshGrid); // assign to a Form2 local variable
...凡在Form1的(電網所有者)定義了RefreshGrid
方法:
void RefreshGrid(){
// perform grid refresh
}
。 ..所以,在myForm2
可以執行按鈕被點擊時的動作:
void OnButtonClicked(object sender, EventArgs e){
refreshAction();
}
上Close_Form定義事件(當然,考慮事件的更好的名字):
public event EventHandler SomethingHappened;
引發此事件按鈕單擊事件處理程序中:
private void Button_Click(object sender, EventArgs e)
{
if (SomethingHappened != null)
SomethingHappened(this, EventArgs.Empty);
}
訂閱此事件上Liste_Form:
Close_Form closeForm = new Close_Form();
closeForm.SomethingHappened += Close_Form_SomethingHappened;
刷新此事件處理程序列表:
private void Close_Form_SomethingHappened(object sender, EventArgs e)
{
// refresh GridView
}