“在IE中托管WPF应用程序”的模态窗口问题

时间:2013-06-23 07:27:23

标签: wpf

我们有一个WPF应用程序(.Net 4.0)将在IE 8上托管。当我们打开wpf对话框(我们使用ShowDialog())时,用户仍然可以专注于对话框的父窗口并可以更改数据。这是一种奇怪的行为。我们该怎么做才能限制这个?

1 个答案:

答案 0 :(得分:0)

我遇到了同样的问题,我找不到答案。我找到的唯一解决方法就是这个:

        if ((Application.Current != null) && (Application.Current.MainWindow != null))
        {
            window.Owner = Application.Current.MainWindow;
            Application.Current.MainWindow.IsEnabled = false;
            EventHandler handler = null;

            handler = (sender, e) =>
            {
                window.Closed -= handler;
                Application.Current.MainWindow.IsEnabled = true;
            };

            window.Closed += handler;
        }

我禁用主窗口,关闭对话框后重新启用它。以这种方式,用户不能与主窗口交互。我希望这有帮助