c# - Form.ShowDialog() 或 Form.ShowDialog(this)?

标签 c# .net winforms

我听说如果我在没有指定所有者的情况下调用 form.ShowDialog(),那么我可能会在屏幕上看不到对话框表单(它将与其他窗口一起隐藏)。是真的吗?我在没有指定所有者的情况下使用了 ShowDialog() 数百次,我从来没有遇到过任何问题。

能否请您解释一下在什么情况下我会遇到所描述的问题?

更新:

好吧,我做了很多实验,使用 ShowDialog()(没有指定所有者)我没有遇到任何真正意想不到的问题。

所以我认为 ShowDialog() 会导致问题只是谣言。 如果您不同意 - 请给我一个导致问题的代码示例。

最佳答案

我在 ShowDialog()ShowDialog(this) 之间发现了一个烦恼。

运行 TestApp,显示 newform.ShowDialog(),单击任务栏或快速启动工具栏上的“显示桌面”,单击任务栏上的 TestApp。它显示了 Mainform。您必须按 Alt-Tab 键才能进入新表单。

对比

运行 TestApp,显示 newform.ShowDialog(this),单击任务栏或快速启动工具栏上的“显示桌面”,单击任务栏上的 TestApp。它在顶部显示新表单。

关于c# - Form.ShowDialog() 或 Form.ShowDialog(this)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/816885/

相关文章:

c# - 使用 Rhino Mocks 模拟不可设置的子属性

c# - 如何启动最小化到托盘的 WinForm 应用程序?

c# - 在 C# 中解析带有颜色的日志(文本文件)

c# - 在 TreeView 中获取所有选中节点及其子节点的列表

c# - 关于C#协方差的问题

c# - WebApi复杂类型uri/获取多个参数

c# - 在 C# Windows 服务上重定向 stdout+stderr

.net - 更新解决方案中所有项目中的 nuget 包

C# 从 float 变量中获取数字

c# - 处理 400 万条记录时内存不足