Silverlight 4应用程序冻结没有抛出任何异常
本文关键字:任何 异常 应用程序 冻结 Silverlight | 更新日期: 2023-09-27 18:17:04
我正在开发一个Silverlight 4 RIA应用程序。有一个存储数据的DataGrid
和两个按钮:添加新项和删除项。在为秒时间创建一个新项之后,应用程序会像这样冻结——我将在下面解释这种奇怪的行为。
创建新项的场景如下:
- 单击后,将出现子窗口。对父页上使用的域数据源的引用是在构造函数中传递给子窗口。
- 用户选择文件。
- 文件发送到web服务。作为响应,web服务从该文件返回一些数据。
- 一个新的数据对象正在被创建并插入到域数据源。
子窗口只在调用两次时导致整个应用程序冻结,但是第一次调用需要创建对象。我可以反复打开和关闭子窗口,一切都会正常工作,直到一系列:打开。创建->打开。关闭/打开。创建发生。我试图用VS工具(alt ctrl e)跟踪所有异常,但没有。
上的断点private void Application_UnhandledException(object sender, ApplicationUnhandledExceptionEventArgs e)
也没有显示任何内容。什么好主意吗?
页面代码。子窗口代码
删除以下内容,一切都将正常。
private void ChildWindow_Closed(object sender, EventArgs e)
{
this.DialogResult = false;
}
为了评估更多,ChildWindow_Closed是首先设置dialog sult的结果。通过重新设定,意想不到的事情发生了。
在您帮助我解决这个问题之后,我做了更多的研究。似乎是SL4的bug。这也应该有所帮助。在SL论坛上讨论这个话题。
protected override void OnClosed(EventArgs e)
{
base.OnClosed(e);
Application.Current.RootVisual.SetValue(Control.IsEnabledProperty, true);
}