C# Windows Mobile 6在关闭后会形成一些剩余部分

C# Windows Mobile 6在关闭后会形成一些剩余部分,c#,windows-mobile,compact-framework,C#,Windows Mobile,Compact Framework,我在WindowsMobile 6.5上用c#开发了一个应用程序。 当我试图退出应用程序时,表单的某些部分(表单的上部)仍保留在屏幕上。我只能通过重置设备使它消失 第一张图片:关闭应用程序之前 第二张图片:关闭应用程序后 我应该怎么做才能完全删除表单的所有部分 这是WM6.5的常见问题 我使用的是使用WM6.5的设备,根据我的经验,只有当应用程序错误、不干净或突然退出时,才会发生这种情况。当我正确退出应用程序时,当应用程序突然退出时(即,由于未处理的崩溃,或通过停止调试器,我得到的结果与您报告

我在WindowsMobile 6.5上用c#开发了一个应用程序。 当我试图退出应用程序时,表单的某些部分(表单的上部)仍保留在屏幕上。我只能通过重置设备使它消失

第一张图片:关闭应用程序之前 第二张图片:关闭应用程序后

我应该怎么做才能完全删除表单的所有部分


这是WM6.5的常见问题

我使用的是使用WM6.5的设备,根据我的经验,只有当应用程序错误、不干净或突然退出时,才会发生这种情况。当我正确退出应用程序时,当应用程序突然退出时(即,由于未处理的崩溃,或通过停止调试器,我得到的结果与您报告的结果相同),不会覆盖任何内容


要阻止这种情况发生,您需要确保干净地退出程序,否则这种情况将持续。

这是WM6.5的常见问题

我使用的是使用WM6.5的设备,根据我的经验,只有当应用程序错误、不干净或突然退出时,才会发生这种情况。当我正确退出应用程序时,应用程序突然退出时,不会覆盖任何内容(即,通过未经处理的崩溃,或通过停止调试器,我得到的结果与您报告的结果相同


要阻止这种情况发生,您需要确保干净地退出程序,否则这种情况将持续。

您已经编写了一个全屏应用程序,并可能使用代码移动表单等以使其全屏显示。拥有全屏表单的官方方法是使用SHFullScreen API(尽管开始图标和菜单栏有问题,请看我的博客)

要让WM653知道您已经覆盖了状态栏,您可以在退出应用程序之前先使表单不覆盖任务栏。 您还可以在退出应用程序之前发出ShowWindow(GetDesktopWindow(),SW_NORMAL)


但是,正如Kobunite所说,当你的应用程序不能正常退出,但在退出和正常清理之前或多或少会崩溃时,这个问题也可能会发生。你可以在退出代码中添加一些调试日志,以查看哪个功能或代码失败。

你已经编写了一个全屏应用程序,并可能使用代码移动表单等,使其全屏显示拥有全屏表单的官方方式是使用SHFullScreen API(尽管开始图标和菜单栏有缺陷,请参阅我的博客)

要让WM653知道您已经覆盖了状态栏,您可以在退出应用程序之前先使表单不覆盖任务栏。 您还可以在退出应用程序之前发出ShowWindow(GetDesktopWindow(),SW_NORMAL)


但是,正如Kobunite所说,当你的应用程序不能正常退出,但在退出和正常清理之前或多或少会崩溃时,这个问题也可能发生。你可以在退出代码中添加一些调试日志,看看哪个功能或代码失败。

编辑以显示图片。编辑以显示图片。要添加到@Kobunite和这个答案,如果code调用
Application.Exit()
而不是
Close()
方法。要添加到@Kobunite和此答案,如果代码调用
Application.Exit()
而不是
Close()
方法,也可以得到此结果。