【发布时间】:2010-09-23 19:46:18
【问题描述】:
在标准 Windows 中通常关闭窗口的窗口顶部栏中的 [x] 按钮似乎在 Windows Compact 上执行最小化操作。
如何让它关闭呢?我还需要能够在发生这种情况时引发事件,因为我想在关闭窗口时执行一些逻辑。
【问题讨论】:
标签: winforms windows-mobile compact-framework
在标准 Windows 中通常关闭窗口的窗口顶部栏中的 [x] 按钮似乎在 Windows Compact 上执行最小化操作。
如何让它关闭呢?我还需要能够在发生这种情况时引发事件,因为我想在关闭窗口时执行一些逻辑。
【问题讨论】:
标签: winforms windows-mobile compact-framework
将 Form.MinimizeBox 属性设置为 false。这会将 [X] 更改为 [ok],并关闭您的表单,而不是在单击时将其最小化。
编辑:您想要的事件是正在关闭或已关闭。
【讨论】:
我不确定这与 .NET 论坛支持有何关系,但您需要使用 Native API SHDoneButton。
默认情况下,它设置为“SHDB_HIDE”,然后显示“Windows Mobile”“X”按钮(或任何覆盖 X 按钮的应用程序,如 LGE 的“X”按钮应用程序或 HTC 应用程序)。
如果您将其设置为“SHDB_SHOW”,它将显示一个“确定”按钮,如果按下该按钮会向窗口发送 IDOK。
如果您将其设置为“SHDB_SHOWCANCEL”,它将显示一个“x”按钮,如果按下该按钮会向窗口发送 IDCANCEL。 SHDB_SHOWCANCEL 没有被 MSDN 记录,但它在头文件 (aygshell.h) 中。
【讨论】: