为什么XP视觉样式不适用于ShowDialog或没有MdiParent?

时间:2015-04-28 23:09:11

标签: vb.net visual-studio-2013 windows-8.1

我对如何有效地提出问题感到困惑。

如果我使用.ShowDialog() ,我似乎无法让Windows Visual Styles在Windows 8.1上的Visual Studio 2013中使用我的WinForms。显示()而不先设置.MdiParent。

例如,此代码:

frmCheckRecon.MdiParent = frmMainParent
frmCheckRecon.Show()

或此代码:

Dim l_dialog As frmCheckRecon
l_dialog = New frmCheckRecon
l_dialog.MdiParent = frmMainParent
l_dialog.Show()

给了我正确的XP视觉风格(蓝色软窗口边框和漂亮的控制按钮)

但是这段代码:

' frmCheckRecon.MdiParent = frmMainParent   <-- commented out
frmCheckRecon.Show()

或者这个:

Dim l_dialog As frmCheckRecon
l_dialog = New frmCheckRecon    
' l_dialog.MdiParent = frmMainParent  <-- commented out
l_dialog.Show()

给我NON-XP风格窗口(灰色硬窗边缘,窗口标题栏上的丑陋控制图标等)

因为如果我使用.ShowDialog调用表单,我无法设置.MdiParent属性,使用.ShowDialog始终显示非XP(丑陋)窗口样式。

也许这很容易?我错过了什么?

0 个答案:

没有答案