2016-03-29 12 views
0

2つの勝ち形式でデータを同期するにはどうすればよいですか?私はデータのリストを表示するwinform_firstを持っています。私はもう一つのwinFormを持っています。ここで私はデータを取り込んで編集します。私は実際のデータを取得するためにwinForm _secondを更新した直後に、winForm _firstをリフレッシュする必要があります。 イベントを発生させる方法はありますか?2つのウィンドウを同期するC#

+1

http://stackoverflow.com/questions/977326/propagating-events-from-one-form-to - 他の形式 - イン - cシャープ –

答えて

0

これは一般にマスター詳細と呼ばれ、マスターフォームでイベントを定義し、詳細フォームでイベントを購読します。

あり、インターネット上の多くの参照やチュートリアルがありますが、ここでの基本的な考え方です:

// Master form 
public EventHandler SelectedItemChanged; 

// Method to raise the changed event 
public OnSelectedItemChanged(object sender, EventArgs e) 
{ 
    if (SelectedItemChanged != null) 
     SelectedItemChanged(this, new EventArgs()); 
} 

public void ShowDetailForm() 
{ 
    var detailForm = new DetailForm(); 
    detailForm.Subscribe(this); // You can also use an interface 
    detailForm.Show(); 
} 

// Detail form 
// Need to subscribe typically in constructor, Loaded event, or custom method 
// also need reference to master form 
public void Subscribe(MasterForm form) 
{ 
    form.SelectedItemChanged += new DetailForm_SelectedItemChanged; 
} 

private void DetailForm_SelectedItemChanged(object sender, EventArgs e) 
{ 
    // Handle the event 
} 
関連する問題