【发布时间】:2014-06-17 19:57:17
【问题描述】:
我有一个关于 VB.NET 中的对话框的问题。我正在开发一个销售点程序,并且在销售过程中的某个时刻,我会弹出几个窗口。例如,用户将进入窗口 A 的销售。在窗口 A 中,他们可以选择输入产品等,如果他们选择“维修”产品,则会打开窗口 B,允许他们选择选项.在窗口 B 中,有一个弹出窗口 C 的按钮,允许他们将产品附加到修理处。我的问题是窗口 B 打开窗口 C。
因为我将窗口 B 作为对话框打开(为了检查 DialogResult.OK 是否为真),所以我用 B 打开的任何窗口都是不可触摸的,因为 B 是一个对话框,在转到任何其他窗口之前需要注意/表格。
我的问题是 - 有没有办法仍然使用对话框,但允许在对话框启动时操作其他打开的表单,如果没有,检查用户是否选择 OK 或取消的最佳方法是什么窗外?
我现在能想到的唯一解决方案是将窗口 C 也作为对话打开(它实际上是一个 UserControl,我仍在尝试在代码中找到它实际上被打开/调用的位置),或者创建一个传递给表单的变量,然后在它关闭时传回,这基本上设置了一个标志来继续或取消......
有什么建议/想法吗??
【问题讨论】:
-
我刚刚发现了一个叫做“无模式对话框表单”的东西,这显然正是我正在寻找的东西,但是找不到如何实现它的实例......有什么想法吗?跨度>
-
For 'Modeless Dialog Form' Dim frmFoo As New FooForm() frmFoo.Show()
-
啊,那么我将无法在最后使用“If DialogResult = DialogResult.OK”检查... dangit!不过感谢您的回复!
-
我认为您需要调用
Dim frmC As New FormC() frmC.ShowDialog(Me),其中Me是FormB 的实例。
标签: vb.net forms dialog point-of-sale