Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2008/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Winforms Windows Mobile ShowDialog窗体的标题栏不可见_Winforms_Visual Studio 2008_Windows Mobile - Fatal编程技术网

Winforms Windows Mobile ShowDialog窗体的标题栏不可见

Winforms Windows Mobile ShowDialog窗体的标题栏不可见,winforms,visual-studio-2008,windows-mobile,Winforms,Visual Studio 2008,Windows Mobile,在我的Windows Mobile项目中,我有一个表单,我们称之为form M,以帮助保持我需要以模块方式显示的内容的准确性,因此我在表单的新副本上使用ShowDialog方法。当我从占据整个屏幕的窗体a中显示它时,窗口状态最大化,位置为0,0,除名称之外的所有其他默认属性,设计师会将其拾取并在没有标题栏的情况下显示,标题栏完好无损 但是,如果我在表单B的顶部显示另一个模式窗口,该窗口占据整个屏幕并使用与表单A相同的表单属性,然后尝试从该表单显示模式对话框表单M,则标题栏不可见,我可以看到表单B

在我的Windows Mobile项目中,我有一个表单,我们称之为form M,以帮助保持我需要以模块方式显示的内容的准确性,因此我在表单的新副本上使用ShowDialog方法。当我从占据整个屏幕的窗体a中显示它时,窗口状态最大化,位置为0,0,除名称之外的所有其他默认属性,设计师会将其拾取并在没有标题栏的情况下显示,标题栏完好无损

但是,如果我在表单B的顶部显示另一个模式窗口,该窗口占据整个屏幕并使用与表单A相同的表单属性,然后尝试从该表单显示模式对话框表单M,则标题栏不可见,我可以看到表单B的顶部在其后面。表单M还具有除ControlBox False之外的所有默认属性,因此会在设计器中显示标题栏

关于找什么有什么想法吗?我尝试了几乎所有操作父窗体和模态窗体WindowState、FormBorderStyle、ControlBox、TopMost等属性的组合,但还没有找到一个有效的组合

它在Windows Mobile 6 Classic emulator和我的设备上表现出相同的行为

下面是表格M应该是什么样子的,当它显示在表格A的顶部时:

当表格M显示在表格B和表格A的顶部时:

这些屏幕截图取自我的Dell Axim X51V,它有一个480x640屏幕

这个项目在过去工作得很好,我刚刚将它从VS2005转换到VS2008,我想知道在转换过程中有什么原因导致了这种情况的发生


编辑:我注意到,在我的应用程序中,有标题栏的其他表单试图显示在表单B的顶部,并且它显示了相同的行为。如果发生这种情况,我按日历硬件按钮打开日历应用程序,然后按Ctrl+Q我正在使用MyMobiler进行屏幕截图和设备键盘控制,日历窗口消失,表格M显示出来,这次标题栏显示得很好。

所以,当表格A和表格B都显示时,然后Form-M您仍然可以看到Form-B中菜单栏的位置。大多数情况下,菜单栏位于屏幕底部,这在所有3个表单上都有使用。标题栏或任务栏(如果您愿意)位于顶部,这是隐藏的项目。因此,当Form-A和Form-B都显示时,Form-M仍然可以看到Form-B菜单栏应位于的位置。对于大多数情况,菜单栏位于屏幕底部,这在所有3个表单上都使用。标题栏或任务栏(如果愿意)位于顶部,这是要隐藏的项目。