我的Silverlight应用程序中有一个自动锁定功能,需要在一段时间后锁定屏幕。问题是即使应用程序被锁定,打开的对话框仍然保持打开状态。
如何以编程方式关闭这些对话框?
答案 0 :(得分:1)
你应该添加如下:
dialog.DialogResult = false;
dialog.Close();
答案 1 :(得分:0)
我使用以下代码段来关闭我的silverlight应用中的打开对话框。
UIElement ui = App.Current.RootVisual;
foreach (var popup in VisualTreeHelper.GetOpenPopups())
{
if (popup != null)
{
System.Windows.Controls.ChildWindow dialog = popup.Child as System.Windows.Controls.ChildWindow;
if (dialog != null)
{
dialog.DialogResult = false;
dialog.Close();
}
}
}
这仅适用于Silverlight 4或更高版本。