2017-09-11 32 views
0

我正在創建一個WPFC#.Net應用程序Aero應該運行在Win7以及Win10上。爲什麼我的應用程序忽略Windows 7上的某些xaml代碼?

在Win10上一切正常,但在Win7上,GUI看起來大不相同。 特別是,我的MenuItems似乎忽略了某些設置,例如VerticalContentAlignmentBorderThickness

照片管理: Win7 VS Win10

我該如何解決這個問題?

(一些代碼:)

xmlns:Themes="clr-namespace:Microsoft.Windows.Themes;assembly=PresentationFramework.Aero" 

<MenuItem Header="Intranet" 
      Grid.Column="2" 
      x:Name="Menu_Intranet" 
      ToolTip="Intranet" 
      BorderBrush="white" 
      BorderThickness="5" 
      VerticalAlignment="Stretch" 
      Click="Menu_1_Click" 
      ToolTipService.ShowOnDisabled="true" 
      VerticalContentAlignment="Center"/> 

提前感謝!

+0

嘗試使用[Snoop](https://github.com/cplotts/snoopwpf)比較可視化樹 - 您可能也想查看MenuItem的容器屬性。 –

+0

@AlexSeleznyov我無法下載Snoop,因爲它沒有通過我公司的病毒掃描程序。 :/ 我也嘗試編輯默認的'ItemContainerStyle'的副本,並添加了'Style =「{StaticResource myMenuItemStyle}」'我的'MenuItem's之一,但這並沒有做太多,雖然我很可能忽略了某些東西。 Code在這裏太長,會更新OP。 –

+0

直到你能夠看到視覺樹,你可能正在修復什麼沒有損壞。 VS2015/17內置Visual Tree查看器,但我不喜歡它,並始終關閉。您可能想嘗試一下。 –

回答

0

我編輯了MenuItemControlTemplate(在設計器 - >編輯模板中右鍵單擊要編輯的控件),並通過Template="{DynamicResource MyMenuItemControlTemplate}"將其應用於MenuItems

我想這不會讓OS/Theme應用自己的設置。

相關問題