我尝试引用System.Windows.Controls.Ribbon
,工具箱标签未显示。如果我右键单击选项卡并单击全部显示,则选项卡就在那里,但控件不亮。我可以手动添加选项卡和控件,但在添加功能区后,quickaccesstoolbar
和menuitem
等功能无法正常工作 - 出于某种原因,它们会被视为制表符。对照组也不起作用。 根本没有任何作用。
我尝试过直接编辑XAML。它的失败方式与使用设计器的方式相同。
在线教程要么已过时,要么是付费控制套件,要么就是不能工作。
我不想使用像http://www.codeproject.com/Articles/364272/Easily-Add-a-Ribbon-into-a-WinForms-Application-Cs这样的标记解决方案,我想要一些适用于设计师的东西 - 这太难以问了吗?如果是这样,我很乐意回到winforms。
如果你使用缎带,你是怎么做到的?这个问题看似简单,但经过几个小时的挖掘,我仍然没有答案。
我是一名开发人员,制作开源免费软件。作为一名学生,我真的无法负担1000美元的控制套件。我使用VS2013社区,我尝试使用2015,但上面的所有问题都是一样的。
答案 0 :(得分:8)
并尝试使用此代码示例:
<DockPanel>
<Ribbon DockPanel.Dock="Top" Margin="0,-22,0,0">
<Ribbon.ApplicationMenu>
<RibbonApplicationMenu SmallImageSource="Images/list.png">
<RibbonApplicationMenu.AuxiliaryPaneContent>
<RibbonGallery ScrollViewer.VerticalScrollBarVisibility="Auto">
<RibbonGalleryCategory MaxColumnCount="1">
<RibbonGalleryItem x:Name="GalleryItem1" Content="Application menu content"
MouseOverBackground="Transparent"
MouseOverBorderBrush="Transparent"
CheckedBackground="Transparent"
CheckedBorderBrush="Transparent"
/>
<RibbonGalleryItem>
<Hyperlink x:Name="hl1" Click="hl1_Click">
<Run Text="http://www.bing.com"/>
</Hyperlink>
</RibbonGalleryItem>
</RibbonGalleryCategory>
</RibbonGallery>
</RibbonApplicationMenu.AuxiliaryPaneContent>
<RibbonApplicationMenuItem x:Name="menuItem1" Header="Add" ImageSource="Images/add.png"/>
<RibbonApplicationMenuItem x:Name="menuItem2" Header="Settings"
ImageSource="Images/system_preferences.png"/>
</RibbonApplicationMenu>
</Ribbon.ApplicationMenu>
<RibbonTab x:Name="rbnTab1" Header="Tab1">
<RibbonGroup x:Name="rbnGr1" Header="General">
<RibbonButton x:Name="btnRibbon1" Label="Save" LargeImageSource="Images/filesave.png"/>
<RibbonButton x:Name="btnRibbon2" Label="Open" LargeImageSource="Images/load.png"/>
</RibbonGroup>
<RibbonGroup x:Name="rbnGr2" Header="New group">
<RibbonButton x:Name="btnRibbon3" Label="Font" LargeImageSource="Images/fonts.png"/>
<RibbonButton x:Name="btnRibbon4" Label="Delete" LargeImageSource="Images/recycle_bin.png"/>
</RibbonGroup>
</RibbonTab>
<RibbonTab x:Name="rbnTab2" Header="Tab2">
<RibbonGroup x:Name="rbnGr3" Header="Other Group">
<RibbonButton x:Name="btnRibbon5" Label="Play" LargeImageSource="Images/play.png"/>
<RibbonButton x:Name="btnRibbon6" Label="List" LargeImageSource="Images/kmenuedit.png"/>
</RibbonGroup>
<RibbonGroup x:Name="rbnGr4" Header="What a group">
<RibbonButton x:Name="btnRibbon7" Label="Sleep" LargeImageSource="Images/icon_sleep.png"/>
<RibbonButton x:Name="btnRibbon8" Label="Add" LargeImageSource="Images/add.png"/>
</RibbonGroup>
</RibbonTab>
</Ribbon>
<Grid>
<!-- add your content here-->
</Grid>
</DockPanel>
如果您不喜欢此<Ribbon.ApplicationMenu>
Visibility="Collapsed"
<Ribbon.ApplicationMenu>
<RibbonApplicationMenu Visibility="Collapsed">
</RibbonApplicationMenu>
</Ribbon.ApplicationMenu>
答案 1 :(得分:2)
请查看以下内容。您应该能够对Ribbon有一个非常基本的想法。
http://blogs.msdn.com/b/wpf/archive/2010/08/03/introducing-microsoft-ribbon-for-wpf.aspx
示例项目下载
如果要运行项目,则需要将项目的.NET Framework版本更改为4.0或更高版本。
将System.Window.Controls.Ribbon引用添加到项目
删除像System.Window.Shell和RibbonControlLibrary
这样的引用在修复xmal中的所有命名空间和代码隐藏后,应该能够运行示例.cs
http://blogs.msdn.com/b/wpf/archive/2010/08/03/building-a-simple-ribbon-application-in-wpf.aspx
适用于WPF的Microsoft功能区(获取带样本的内容以获取更全面的示例) http://www.microsoft.com/en-us/download/details.aspx?id=11877