13

我有我的 MainApplication 窗口,它使用 .ShowDialog() 启动一个新窗口,因此它是模态的。

UploadWindow uploadWindow = new UploadWindow();
uploadWindow.ShowDialog();

现在用户经常打开这个窗口,它可能会在其他窗口下丢失。当单击 MainApplication 时,您会收到类似错误的哔声并且无法与之交互,因此模态窗口按预期正确阻塞,但如果模态窗口此时聚焦于向用户显示它会很好还开着。

目前,它看起来好像 MainApplication 窗口已锁定。

4

5 回答 5

27

尝试设置对话框的所有者:

var uploadWindow = new UploadWindow();
uploadWindow.Owner = this;
uploadWindow.ShowDialog();
于 2009-06-16T10:16:04.847 回答
2

我有问题,我不能用这个,如果有人有同样的问题,你可以用

Window.GetWindow(this)
于 2010-01-05T09:29:58.673 回答
1

因为我使用的是 MVVM,所以我没有从 GUI 创建代码。我用过这个。

var uploadWindow = new UploadWindow();
uploadWindow.Owner = Application.Current.MainWindow;
uploadWindow.ShowDialog();
于 2016-09-02T01:40:05.467 回答
0

如果上述所有解决方案都尝试过但仍然面临同样的问题,那么这是您经过测试和验证的解决方案,请转到您的窗口 xaml 并添加

ResizeMode = "NoResize"

于 2015-07-27T06:53:15.370 回答
0

现在你可以设置Topmost = true

var uploadWindow = new UploadWindow();
uploadWindow.Topmost = true;
于 2021-07-22T09:11:40.463 回答