为什么我的 RibbonWindow 主题不正确?
-
23-09-2019 - |
题
使用功能区控件库,当我运行应用程序时,标题栏看起来像 W98 应用程序。怎样才能让它看起来漂亮呢?
编辑: 看来这和windows上使用的主题有关。
任何帮助,将不胜感激。
替代文本 http://img718.imageshack.us/img718/8188/321321.jpg
<r:RibbonWindow x:Class="Produccion_Dampers.main"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:r="clr-namespace:Microsoft.Windows.Controls.Ribbon;assembly=RibbonControlsLibrary"
Title="Window1"
Height="600"
Width="800">
<DockPanel>
<r:Ribbon DockPanel.Dock="Top" Title="my App looks like s***t">
</r:Ribbon>
</DockPanel>
</r:RibbonWindow>
解决方案
(来自我之前的评论)
您可以按照此 MSDN 文章中的描述绘制自定义窗口框架: http://msdn.microsoft.com/en-us/library/bb688195(VS.85).aspx, ,其中包括有关使用系统主题字体绘制窗口标题的信息(这可能提供有关访问其他主题信息的线索)。
其他提示
如果您在计算机上运行自定义主题,WPF 窗口默认为“经典”主题。
据我了解,您的选择受到限制,因为标题栏对于您的应用程序来说不是客户端——它是由操作系统呈现的(为什么它不能采用自定义主题,我不知道)。
- 你可以使用 p/invoke 来做一些讨厌的事情
- 您可以创建一个无边框窗口并自己伪造标题栏
- 您可以查看此处的(相当旧的)信息是否对您有任何好处: http://www.browsoft.com/tutorials/DefaultTheme.html
(如果最后一个有效,则意味着我对渲染标题栏的理解不正确。)
不隶属于 StackOverflow