将此传递到MessageBox [重复]

问题描述 投票:0回答:1

我们这里有一个WPF应用程序,它经常使用MessageBox.Show。有时它通过this作为第一个参数,有时则不。 this引用表示MainWindow

MessageBox.Show(this, "test");
MessageBox.Show("test");

我想通过始终传递this使整个应用程序保持一致。但是,有一个不同的东西吗?从this中添加或删除MessageBox.Show时,行为是否改变了?

.net wpf
1个回答
-1
投票

documentation开始,第一个参数是IWin32Window

将拥有模式对话框的IWin32Window实现。

当您使用this时,基本上是多余的,因为默认情况下所有者是“调用代码”(在您的示例中为MainWindow)。但是,如果您具有多种形式并通过集中式代码控制它们,则可能会很有用。

所以您有两个选择可以使代码一致

  • 将其删除到任何地方,仅在需要其他地方使用时才使用所有者。
  • 如果您希望与其他人保持一致,所有者,您可以在任何地方保留它。
© www.soinside.com 2019 - 2024. All rights reserved.