Fox*_*x32 20 wpf ribbon windows-8 .net-4.5 wpf-4.5
我正在使用Windows 8和Visual Studio 2012的发行版本来创建带有Ribbon控件的WPF应用程序.我在.Net Framework 4.5中选择了WPF附带的功能区控件.
我创建功能区的代码:
<RibbonWindow
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="clr-namespace:WpfExperiments" x:Class="WpfExperiments.MainWindow"
Title="MainWindow" Height="350" Width="525" Icon="Test.ico">
<Ribbon>
<Ribbon.ApplicationMenu>
<RibbonApplicationMenu>
<RibbonApplicationMenuItem Header="Item 1"></RibbonApplicationMenuItem>
</RibbonApplicationMenu>
</Ribbon.ApplicationMenu>
<Ribbon.QuickAccessToolBar>
<RibbonQuickAccessToolBar>
<RibbonButton SmallImageSource="Test.ico" Label="Test"></RibbonButton>
</RibbonQuickAccessToolBar>
</Ribbon.QuickAccessToolBar>
</Ribbon>
Run Code Online (Sandbox Code Playgroud)
但问题是,它生成一个丑陋风格的窗口,与windows 8风格不匹配:

将它与资源管理器功能区进行比较.窗口标题居中(并具有不同的颜色),窗口的边框大小不同.功能区的风格是不一样的,但如果我有与MS Word相同的功能区风格(在Windows 8中正确显示),我会感到满意.

WPF的功能区控件是否不支持新的Windows 8样式?或者我错过了任何设置?
编辑:
我开始在Blend中编辑模板(4.0,我无法访问5.0).修复一些编译错误(似乎是混合中的错误)后,我可以运行该应用程序,但它看起来像这样:

但这不是我改变的良好起点......
WPF 功能区不是操作系统提供的控件(如大多数 Windows 窗体控件)的包装器,而是从头开始构建的,以具有开发时功能区的外观和感觉,同时作为一个控件与其他 WPF 控件一样灵活(注意对模板部分的支持)。
也就是说,这是控件(当前)未更新以支持 Windows 8 风格的问题。考虑到必须更改的多个控件的模板数量,以及向后兼容的需要(这是我目前的猜测),当 .NET 4.5 发布时,它可能被视为不是优先事项。
您也许可以自己更改主题,但这看起来是一项艰巨的任务,因此使用已经实现 Windows 8 功能区样式的第三方控件可能是值得的。
| 归档时间: |
|
| 查看次数: |
8739 次 |
| 最近记录: |