问题标签 [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 投票
5 回答
52339 浏览

wpf - 模态对话框未显示在其他窗口之上

我正在使用Window.ShowDialog()在我的 WPF (MVVM) 应用程序中打开一个模式窗口,但它允许我使用 Windows 任务栏 (Windows 7) 导航到其他窗口。

考虑一下:我的应用程序中打开了 3 个非模态窗口。现在其中之一使用Window.ShowDialog(). 我还设置Application.MainWindow为模态窗口的所有者。之所以如此,是因为我正在使用 MVVM 消息传递,并且打开新窗口的消息处理程序集中在App.xaml.cs. 窗口确实以模态方式打开-那里没有问题。但是,Windows 7 允许我从任务栏切换到其他应用程序窗口。这导致模态窗口位于另一个窗口后面的情况,我不希望这样。

只要我打开模态窗口,我就不能在其他窗口上做任何事情,但是如果模态窗口只要打开就一直保持在顶部,那就太好了。有没有办法在模式打开时禁用任务栏切换?仅供参考 - 从应用程序启动的所有打开的窗口都在任务栏上显示为单独的条目。

提前致谢!

0 投票
3 回答
4181 浏览

c# - 如何在 c# 应用程序的 showdialog() 上自动单击确定按钮?

我正在使用 Windows 移动应用程序 .. 正是它 Microsoft.WindowsMo​​bile.Samples.CECamera

当我捕获图像时,会出现一个对话框,告诉它已成功捕获,我应该单击确定。在代码中,它使用这个确定点击继续保存图片......现在我希望这条消息停止出现。或任何其他方法来自动单击该确定按钮。

0 投票
1 回答
3668 浏览

wpf - 对话框窗口在其他窗口后面丢失

我是 WPF 的新手,所以这可能是一个非常简单的问题。我使用 ShowDialog() 打开一个对话框窗口。然后,如果我单击另一个全屏窗口或只是覆盖我的对话框,则很难返回对话框。任务栏中显示的图标将我带回 WPF 主窗口,但对话框隐藏在另一个窗口后面。我要么必须最小化阻止窗口,要么将 Alt-Tab 最小化回我的应用程序(这将显示对话框但隐藏主窗口)。

窗口的定义如下所示:

我像这样打开它:

0 投票
1 回答
1049 浏览

wpf - Data validation on ShowDialog window in WPF

I have a window that I display as ShowDialog in the window I have some textboxes binding to object that implement INotifyPropertyChannges and IDataErrorInfo. I want that the OK button will enabled just if all thextboxes validted and I want that just if the user click on OK buton the next move will occur.

I can bind the button to ICommand and check the textboxes valitation in CanExcute() but then what can I do in the Excute? the object dont know about the window. I can also check the textboxes valitation and then raise event that all valid and enable the OK button but then there will be dupliacte code because I checked already in the IDataErrorInfo implmention.

So what is the right way?

Thanks in advance

0 投票
2 回答
1587 浏览

c# - ShowDialog 使用调用使应用程序无响应

Control.Invoke()用来显示一个对话框。该代码是从用户那里获取凭据的处理程序,它可以在线程中执行,这就是我将调用执行到InvokeRequired/Invoke片段中的原因。

有时,并且仅在某些机器上,当我关闭对话框时,应用程序变得无响应(它不管理某些鼠标点击,但管理其他点击)。如果我执行一些“允许”的操作,应用程序将再次开始响应。似乎处理任何事件,应用程序都会自行修复。

您是否知道 .NET 框架中的任何已知错误,或者可能导致此问题的东西?

提前致谢。


编辑:这是我正在使用的代码:

0 投票
2 回答
5677 浏览

c# - wpf中的DialogResult问题

我有一个窗口,我作为 ShowDialog 打开了几次。

每次我打开它时,我第一次使用新关键字:

我第二次从 MyWindow View Model 类中打开它:

在 MyWindow 代码后面我有 2 个事件。一种是当用户单击确定时,另一种是当用户单击取消时。

从视图模型类触发的事件形成 ICommand Execute,然后绑定到窗口的“确定”和“取消”按钮。

在 xaml 中,我为取消按钮执行了此操作:

这对于确定按钮:

在我第一次打开窗口时,我可以设置 DialogResult = true,但是之后当我尝试设置 DialogResult 时出现异常“Dialofresult 只能在创建窗口后设置并显示为 ShwDialog”。

我还看到第一次设置为 true 后 DialogResult 为 true,我认为这是异常的原因,但我不明白如果我关闭窗口并使用 new 关键字创建一个新窗口,为什么会保持 true .. .

任何建议

提前致谢

编辑: 问题是,一旦我单击“确定”按钮,DialogResult 设置为 true 和 saty true,我无法将其设置为 false。

编辑

谢谢大家我解决了问题。

问题是我注册到视图模型事件(单击“确定”并单击“取消”),当用户单击“取消”时我删除了注册,但当他单击“确定”时没有删除...

0 投票
1 回答
429 浏览

c# - 事件队列无法正常工作

假设一个主窗体 A 和一个模态对话框 B。

我从一个线程(使用调用)启动 B 作为模式对话框。对话框正确显示并使用 ShowDialog(parent) 启动,其中 parent 是表单 A。

当我关闭 B 时,主对话框 A 无法正确响应某些事件,例如鼠标单击。此问题仅在以下情况下重现:

  • 代码使用 .NET 框架 1.1 配置文件编译
  • 代码在 Windows 7 x64 机器上执行

关闭对话框后,会出现以下症状:

  • 表单 A 不响应某些鼠标单击,但响应鼠标移动(鼠标移动时按钮突出显示)。
  • 主窗口关闭按钮在鼠标悬停时突出显示,也可以单击,但不会关闭窗体。
  • 新的模态对话框不再是模态的。
  • 具有 , 属性的对话框StartPosition=CenterParent不居中,它们显示在屏幕的左上角。

我无法在其他机器上重现该问题。此外,如果我使用 .NET 2.0 或更高版本编译代码,问题不会重现。

有什么建议可以解决这个问题吗?我的应用程序需要 1.1。我可以执行任何调用来恢复事件队列吗?

提前致谢。

0 投票
0 回答
304 浏览

compact-framework - 禁用 ShowDialog() 窗体上的确定按钮。

是否可以禁用使用 ShowDialog() 显示的 NET CF 表单上的默认 OK 按钮?
我正在表单上实现自己的按钮。

谢谢。

0 投票
2 回答
1533 浏览

wpf - 没有其他窗口打开时 System.Windows.Window.ShowDialog() 的意外行为。知道为什么吗?

当我的 WPF MVVM 应用程序试图在主窗口启动之前显示两个连续的错误对话框窗口时,我发现了这一点(付出了一些努力):确定第一个窗口后,应用程序进入循环,第二个错误对话框从未出现.

我解决了这个问题,但我希望有人能告诉我为什么会这样。

看起来,如果没有非模态打开的窗口,如果一个对话框窗口已经关闭,所有新的对话框窗口都立即关闭,不显示。

它很容易重现,所以这里有一些非常自负的代码来说明这个问题。此代码是完整的,因此仅使用此代码,您应该能够重现它。

为对话框窗口创建一个 Window 控件,没有后面的代码,只有以下 XAML:

接下来,使用标准的 WPFApp类,在 XAML 中没有任何新内容,但在后面的代码中有以下内容:

删除 MainWindow.XAML(如果存在),并从 App.XAML 标头中删除对它的引用。

跑。(程序,不像Forest)。

这按预期工作。alwaysOpen窗口保持打开状态,而其他实例一个接一个地dialogWindow以对话模式出现,单击时关闭OK,然后显示下一个实例。

但是,当您更改OnStartup为以下内容时,这会中断:

当没有持续打开的窗口时,第一个对话窗口是唯一有效的。之后,无数的“演出前”和“演出后”消息被打印到控制台,但没有出现新的对话框窗口——它们一显示就自动关闭。

这肯定不是预期的行为吗?你得到同样的结果吗?知道为什么会这样吗?

0 投票
2 回答
382 浏览

c# - 如何禁止用户关闭表单?(MS 与 C# 2010)

可能重复:
如何禁用 Alt + F4 关闭表单?

请帮帮我。

如何制作仅从程序代码关闭的模态表单。当用户按下 Alt+F4 等时,我想防止表单关闭。

我正在使用 MS VS C# 2010。