问题标签 [showdialog]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
3890 浏览

c# - 如何检查表单是否打开了任何 ShowDialog() 表单?

我有一个 MainForm 表单,其中包含从另一个线程访问的多个属性/方法。

在某些时候,我可能会使用 ShowDialog() 打开一个表单 AuxForm,然后当该模式表单打开时,另一个线程仍会修改 MainForm 的属性。这都是想要的。

在从另一个线程访问的方法之一中,我需要执行一些代码,但前提是模式 AuxForm 未打开。有什么方法可以检查(通过使用 .NET WF Form 属性)还是我需要使用标志变量?

注意:这些属性/方法都不会修改控件(因此不需要调用)。

0 投票
1 回答
6009 浏览

.net - Windows 窗体和 ShowDialog 问题

我有一个无边界的Windows 窗体应用程序。

主窗口使用ShowDialog(). 每个创建的对话框都在任务栏中不可见,我的应用程序只有一个任务栏条目专注于我的应用程序(如果一个对话框打开,则一个是专注的)。如果我使用ALT+TAB循环到所有打开的窗口,我也只会看到一个条目。

但是,如果在我的应用程序没有焦点时创建了对话框(例如,用户启动了一个长时间运行的任务,开始处理其他事情并且在后台时,我的应用程序会显示一个对话框“任务完成.. .") 我想回到我的应用程序,事情变得越来越奇怪。

  • 如果我单击任务栏以聚焦我的应用程序,则主窗口将聚焦(而不是对话框)。
  • 我不能使用主窗口(因为仍然有一个打开的模式对话框)。
  • Windows 7 ALT+TAB预览显示对话框,而任务栏鼠标悬停预览显示主窗口(在正常行为中,两者都在主窗口前面显示对话框)。
  • 使我的应用程序再次可用的唯一方法是ALT+TAB到条目并关闭模式对话框。
  • 如果我使用ALT+TAB只有对话框被带到前面,主窗口仍然在后台。

有没有办法防止这种情况发生?我知道该怎么做,但大多数客户认为应用程序崩溃是因为主窗口没有响应。

更新:

解决方案是将顶层窗口传递给ShowDialog()方法(在大多数情况下,如果以“this”的形式使用)。

因为我不想重构我的整个代码,并且我的所有表单都继承自“MyCustomFormBase”,所以这里有一个非常有效的小解决方案。

在我使用的主窗口的构造函数中

一次。它帮助我进行了半天的重构;)

0 投票
2 回答
957 浏览

wpf - MEF 组件上的 ShowDialog 仅工作一次

我创建了一个 WPF 窗口并将其设为 MEF 导出。

我可以在 MEF 导入上执行一次 ShowDialog,但第二次它中止,因为 MEF 组件已被第一个 ShowDialog 关闭。

可以做些什么来允许 ShowDialog 的重复?

0 投票
1 回答
4224 浏览

silverlight - 升级到 Silverlight 4 导致 System.Security.SecurityException

尝试打开文件对话框,但在调用 ShowDialog 时出现异常。这段代码一直运行良好,但我认为当我升级到 Silverlight 4 时会引起一些问题。

代码:

例外:

获取目录选项似乎是个问题,因为我得到了正确的文件名和文件大小,但没有关于目录和目录名的信息。

0 投票
7 回答
8435 浏览

c# - 我在 Windows 窗体中的跨线程调用有什么问题?

我在使用 Windows 窗体应用程序时遇到问题。

必须从另一个线程显示表单。所以在表单类中,我有以下代码:

现在,每次我运行它时,InvalidOperationException都会抛出一个在线this.ShowDialog();

“跨线程操作无效:控件'SampleForm'从创建它的线程以外的线程访问。”

这段代码有什么问题?这不是进行跨线程调用的有效方法吗?有什么特别之处ShowDialog()吗?

0 投票
1 回答
1306 浏览

.net - 没有主窗体的 Winforms 应用程序 - 对话框未显示在顶部

我有一个实际上没有主窗体的 winforms 应用程序 - 它只是一个简单的文件处理工具,因此它并不真正需要它。

当应用程序启动时,首先使用 OpenFileDialog 来选择一个文件。然后,使用 Showdialog() 显示一个对话框,其中包含有关如何处理所选文件的一些选项。最后,在对文件进行操作时会显示一个进度条表单,并退出应用程序。

问题是,当我从 Visual Studio 调试时,中间窗体不会显示在其他打开的窗口之上,例如 Visual Studio 本身。当我运行编译的可执行文件时,它似乎工作正常。

通常,当 ShowDialog 导致出现后面的对话框时,解决方案是使用 Showdialog(owner) 调用,除非我没有主窗体可言,我没有要设置的所有者。

那么,如何使对话框以与 OpenFileDialog 自动执行的方式相同的方式出现在其他窗口之上?

0 投票
4 回答
4555 浏览

c# - 等待MDI子关闭,类似于ShowDialog()

我有一个 MDI 应用程序,我想在其中使用模式对话框...是的,我知道这有点违反 MDI 的原则...无论如何,我的主窗口更像是一个“工作区”然后是别的。

回到主题,如何等待 MDI-Child 关闭?一些示例代码:

MySearchForm是主窗口的MDI-Child,所以不能使用ShowDialog(),但还是想用阻塞的方法等待窗口关闭并返回结果。我想过在另一个线程上调用它并等待那个线程退出,但这也不适用于 MDI。

有人有想法吗?

0 投票
3 回答
71080 浏览

android - 如何检查是否显示对话框或显示多个相同类型的对话框?

我正在通过showDialog/ dismissDialog/管理对话框removeDialog

我想要:

以堆栈的形式显示多个对话框:

a)第一个对话框显示使用showDialog(DIALOG_TYPE)

b) 下一个对话框显示在现有对话框的顶部

现在我只能使用显示第一个对话框showDialog,然后忽略下一个对话框。

显示最后一个对话框:

a)第一个对话框显示使用showDialog(DIALOG_TYPE)

b) 应用程序检查是否显示对话框,关闭对话框(如果显示)并打开一个新对话框。

有没有可能实现上述解决方案之一?

0 投票
3 回答
1315 浏览

.net - 为什么隐藏子窗体也会隐藏父窗体?

我有三种形式:A,B和C。

单击按钮后,A 显示 B。类似地,B 显示 C。两者都使用 ShowDialog() 方法。

但是,当我在表单 C 上使用 Hide() 方法(在 Button Click 事件中)关闭它时,表单 B 也会关闭。

为什么会这样?据我所知,它不应该这样做。我当然没有编写任何代码来告诉它这样做。

这是代码:

更新:我是个白痴。DialogResult设置为Cancel按钮上,因为我从现有的关闭按钮复制+粘贴它并且没有意识到该属性已设置。无论如何,谢谢大家的建议!

0 投票
1 回答
1755 浏览

android - 执行 AlertDialog.Builder create() 方法时应用程序崩溃 - Android

我正在 LG Eve 手机上测试我的应用程序。我有一个应用程序试图从网上下载一些东西,当它抛出一个异常时,它应该启动一个警报对话框,说有一个错误。当手机没有 wifi 信号时,程序在 builder.create() 处崩溃(见下面的代码)。但是,当有 wifi 信号时,异常是由其他东西引发的(例如,url 中的拼写错误),对话框会以它应该的方式启动。关于为什么会这样的任何线索?

onCreateDialog 的代码:

调用 showDialog 的 AsyncTask 代码: