![](/img/trans.png)
[英]How can I invalidate or stop processing of the form from inside a submit button click event handler?
[英]Refresh the control or reload form from button click event handler on other form
我在Liste_Form中有一個GridView
在Close_Form中有一個按鈕。
當我單擊Close_Form上的按鈕時,如何在Liste_Form中刷新Gridview
?
或重新加載Liste_Form。
您有幾種方法可以完成此操作。 我可能建議的一種方法是將委托傳遞給構造函數中的第二種形式:
Form2 myForm2 = new Form2(RefreshGrid); // assign to a Form2 local variable
...在Form1(網格所有者)中的RefreshGrid
定義了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
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.