2012-08-24 86 views
3

我有一个主窗口,它是应用程序启动窗口。 在该窗口中,有一个Repeater控件绑定到SQL Database,并有一个按钮用于打开一个新窗口。检查打开的窗口是否已关闭

新窗口中有一种方法,可以将数据插入SQL Database控制器读取的第一个窗口的“Repeater”中。

该中继器有一个RepeaterRefresh()方法,强制它重新绑定到SQL Database,揭示添加的任何东西。

我该如何将第二个窗口的Close()事件绑定到RepeaterRefresh()方法,以便数据自动显示在中继器上。

我已阅读thisthisand this,但我仍然觉得我的问题没有关系。

回答

6

为什么不是简单的处理程序添加到ClosingClosed事件:

private void ShowChildWindow() 
{ 
    Window childWindow = new ChildWindow(); 
    childWindow.Closed += ChildWindowClosed; 
    childWindow.Show(); 
} 

private void ChildWindowClosed(object sender, EventArgs e) 
{ 
    ((Window)sender).Closed -= ChildWindowClosed; 
    RepeaterRefresh(); 
} 
+2

的ChildWindowClosed方法将需要此行:(发送者作为窗口).Closed - = ChildWindowClosed; – JoanComasFdz

+0

@JoanComasFdz谢谢,我补充说。 – Clemens

+0

像魅力一样工作! – TheGeekZn