Liste_FormにinがありGridView
、Close_Formにボタンがあります。
Gridview
Close_Formのボタンをクリックしたときに、Liste_Formを更新するにはどうすればよいですか?
または、Liste_Formをリロードします。
Liste_FormにinがありGridView
、Close_Formにボタンがあります。
Gridview
Close_Formのボタンをクリックしたときに、Liste_Formを更新するにはどうすればよいですか?
または、Liste_Formをリロードします。
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
}
これを行うにはいくつかの方法があります。私が提案する 1 つの方法は、デリゲートをコンストラクターの 2 番目のフォームに渡すことです。
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();
}