我正在开发Silverlight 4 RIA应用程序。有一个DataGrid
存储数据和两个按钮:添加一个新项目并删除一个项目。在为第二次时间创建新项目后,应用程序冻结了this - 我将解释下面的奇怪行为。
创建新项目的方案如下所示:
子窗口导致整个应用程序仅在被调用两次时冻结,但第一次调用需要创建对象。我可以反复打开和关闭子窗口,一切都会正常工作,直到以下序列:open.create - > open.close / open.create发生。我尝试使用VS工具跟踪所有异常(alt ctrl e),但没有。
上的断点
private void Application_UnhandledException(object sender, ApplicationUnhandledExceptionEventArgs e)
也没有显示任何内容。有什么想法吗?
答案 0 :(得分:1)
删除以下内容,一切都会好的。
private void ChildWindow_Closed(object sender, EventArgs e)
{
this.DialogResult = false;
}
为了进一步评估,ChildWindow_Closed是首先设置DialogResult的结果。 通过重新设置它意外的事情发生。
答案 1 :(得分:0)
在你帮我解决这个问题后,我做了一些研究。似乎是一个SL4错误。 这也应该有所帮助。关于this on SL forums.
的主题protected override void OnClosed(EventArgs e)
{
base.OnClosed(e);
Application.Current.RootVisual.SetValue(Control.IsEnabledProperty, true);
}