对话框所做的不仅仅是隐藏自己
本文关键字:隐藏 自己 不仅仅是 对话框 | 更新日期: 2023-09-27 18:04:53
根据MSDN文档,使用ShowDialog()显示的窗体上的关闭操作应该只会导致窗体被隐藏。后续对ShowDialog()的调用将取消窗体的隐藏。
这似乎不是情况,确切地说。我有一个带有树形视图的表单。在调用ShowDialog()之间保留检查状态,但用户所做的任何节点扩展都将重置回其默认状态。而且,每次都执行Load事件。因此,它似乎不仅仅是"隐藏"表单。有人知道是怎么回事吗?
谢谢
我自己也遇到过这个问题。由于某种原因,调用Form.Hide
或将visible = false
设置为模态形式至少在某些情况下会调用Form.Close
。为了解决这个问题,我将不透明度设置为零。您也可以使用Form.Show
来代替。
如果你想象一个模态对话的行为,这有点直观。它阻塞了父窗口。因此,如果你隐藏它,那么就没有活动窗口供用户交互。就我所知,我认为这种行为应该是父母再次变得活跃起来。但情况并非总是如此。