Я использую Microsoft Ribbon
WPF 4.5 и разрабатываю приложение с использованием VS2012 (C#) на машине Win 8. Я хочу, чтобы мое приложение отображало RibbonApplicationMenu
как «Файл» -меню Office Word 2010, но я не могу узнать, какой из них используется для управления (см. Прикрепленный снимок экрана, красные отмеченные контрольные номера 1 и 2). Я также попробовал RibbonApplicationSplitMenuItem
, но больше похож на офис старого стиля. Может, кто-нибудь может мне сказать. Заранее спасибо.WPF 4.5 Лента Microsoft: какой контроль над RibbonApplicationMenu
ответ
Наконец-то я нашел ответ в МОФ образца браузера Infragistics NetAdvantage. Нет. 1 называется «за кулисами» (стиль ленты 2010), нет. 2 является «пунктом меню приложения». (на мой взгляд) Лента с лентой infragistics проще в использовании, чем Microsoft, поскольку я не могу найти учебное пособие по созданию за кулисами (стиль ленты 2010); существующие учебники в основном используют старую ленту (стиль 2007). Вот гляньте мой простой фрагмент кода:
<Window x:Class="TestRibbon.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:ig="http://schemas.infragistics.com/xaml"
xmlns:igRibbon="http://infragistics.com/Ribbon"
xmlns:ignore="http://www.ignore.com"
mc:Ignorable="d ignore"
Height="768"
Width="1024"
Title="Test Ribbon"
DataContext="{Binding Main, Source={StaticResource Locator}}">
<Grid x:Name="gridMain">
<igRibbon:XamRibbon x:Name="ribbonMain"
Width="Auto"
ApplicationMenuMode="Office2010"
ApplicationAccentColor="Blue">
<igRibbon:XamRibbon.ApplicationMenu2010>
<igRibbon:ApplicationMenu2010 Caption="File">
<igRibbon:ApplicationMenu2010Item KeyTip="I"
Header="Information">
<igRibbon:ApplicationMenu2010Item.Content>
<Grid Margin="20,0,0,0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="150" />
<ColumnDefinition Width="150" />
</Grid.ColumnDefinitions>
<StackPanel Grid.Column="0">
<TextBlock Margin="0,20,0,0" Foreground="Black" Text="IP" />
</StackPanel>
<StackPanel Grid.Column="1">
<TextBlock Margin="0,20,0,0" />
<TextBlock Foreground="DarkGray" Text="192.168.2.1" />
</StackPanel>
</Grid>
</igRibbon:ApplicationMenu2010Item.Content>
</igRibbon:ApplicationMenu2010>
</igRibbon:XamRibbon.ApplicationMenu2010>
</igRibbon:XamRibbon>
</Grid>
</window>
1) Я предлагаю вам использовать ленту, которая находится внутри .net 4.5 (добавить ссылку на System.Windows.Controls.Ribbon). Я не уверен, что вы использовали внешний. 2) Что вам нужно для меню: Ribbon.ApplicationMenu
3) Ниже представлена рабочая лента (на ее основе), которая включает в себя несколько типов кнопок, а также меню, которое вам нужно. Все, что вам нужно для этого - это добавить папку с изображениями с параметром «options.png».
<Window x:Class="WpfApplication1.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="MainWindow" Height="350" Width="525">
<Grid>
<Ribbon SelectedIndex="0" Grid.Column="0" Grid.ColumnSpan="5">
<!-- Help Pane, located at the right-hand side -->
<Ribbon.HelpPaneContent>
<RibbonButton SmallImageSource="Images\options.png" />
</Ribbon.HelpPaneContent>
<!-- Quick Access Toolbar - located at the upper-left corner -->
<Ribbon.QuickAccessToolBar>
<RibbonQuickAccessToolBar>
<RibbonButton x:Name ="Save" SmallImageSource="Images\options.png" />
<RibbonSplitButton x:Name ="Undo" SmallImageSource="Images\options.png" >
<RibbonSplitMenuItem Header="Undo 1" />
<RibbonSplitMenuItem Header="Undo 2" />
</RibbonSplitButton>
<RibbonSplitButton x:Name="Redo" SmallImageSource="Images\options.png" >
<RibbonSplitMenuItem Header="Redo 1" />
<RibbonSplitMenuItem Header="Redo 2" />
</RibbonSplitButton>
<RibbonCheckBox Label="Sound" KeyTip="X" />
</RibbonQuickAccessToolBar>
</Ribbon.QuickAccessToolBar>
<!-- Application Menu, located at the left-hand side (down arrow) -->
<Ribbon.ApplicationMenu>
<RibbonApplicationMenu KeyTip="F">
<RibbonApplicationMenuItem Header="Options1" ImageSource="Images\options.png" />
<RibbonApplicationMenuItem Header="Exit2" ImageSource="Images\options.png" />
</RibbonApplicationMenu>
</Ribbon.ApplicationMenu>
<!-- Ribbon Tab #1: Home -->
<RibbonTab Header="Home" KeyTip="H" >
<!-- Home group-->
<RibbonGroup x:Name="ClipboardGroup" Header="Home">
<RibbonMenuButton LargeImageSource="Images\options.png" Label="Activate" KeyTip="V">
<RibbonToggleButton SmallImageSource="Images\options.png" Label="blabla" KeyTip="H" />
<RibbonToggleButton SmallImageSource="Images\options.png" Label="option2" />
</RibbonMenuButton>
<RibbonToggleButton SmallImageSource="Images\options.png" Label="Toggle " KeyTip="X" />
<RibbonToggleButton x:Name="Toggle11" SmallImageSource="Images\options.png" Label="Just a Toggle" KeyTip="FP" />
</RibbonGroup>
<!-- Employee And Payroll group-->
<RibbonGroup x:Name="Employee" Header="Adjust View">
<RibbonMenuButton LargeImageSource="Images\options.png" Label="Test" KeyTip="V">
<RibbonMenuItem ImageSource="Images\options.png" Header="Keep Text Only" KeyTip="T"/>
<RibbonMenuItem ImageSource="Images\options.png" Header="Paste Special..." KeyTip="S"/>
</RibbonMenuButton>
<RibbonCheckBox SmallImageSource="Images\options.png" Label="Sound" KeyTip="X" />
</RibbonGroup>
</RibbonTab>
<!-- Ribbon Tab #2: Launch -->
<RibbonTab Header="Settings" KeyTip="I">
<!-- Launch/Applications group-->
<RibbonGroup Header="Settings">
<RibbonButton SmallImageSource="Images\options.png" Label="Record" KeyTip="C" />
</RibbonGroup>
</RibbonTab>
<RibbonTab Header="PageLayout" KeyTip="L">
<!-- Launch/Applications group-->
</RibbonTab>
</Ribbon>
</Grid>
</Window>
<Ribbon.ApplicationMenu>
<RibbonApplicationMenu>
<RibbonApplicationMenu.AuxiliaryPaneContent>
<Label Content="Right panel!"></Label>
</RibbonApplicationMenu.AuxiliaryPaneContent>
<RibbonApplicationMenuItem Header="Exit" Click="ShutDown" />
</RibbonApplicationMenu>
</Ribbon.ApplicationMenu>
хаха
- 1. Реализация меню приложения ленты MVVM (лента WPF 4.5)
- 2. Какой контроль использовать в MenuItem? (Свободная лента)
- 3. Лента с использованием .Net 4.5
- 4. WPF Лента: Microsoft, DevExpress или свободно?
- 5. WPF Рендер контроль над другими
- 6. WPF Лента: ToggleButton группы?
- 7. Как очистить контроль над чернилами Microsoft?
- 8. CSS лента - контроль ширины сторон
- 9. RibbonApplicationMenu Недавний список
- 10. Какой контроль над выбором текста это?
- 11. Какой контроль над WinForm я хочу?
- 12. WPF Лента: полная поддержка повторного шаблонирования
- 13. Сделать WPF-контроль над веб-браузером
- 14. Image и TextBlock в WPF RibbonApplicationMenu
- 15. WPF лента управление
- 16. Офисная лента для WPF 4.0
- 17. Какой wpf-контроль для массового количества изображений
- 18. WPF - зная, какой контроль закончится фокусом
- 19. Какой стандартный WPF-контроль следует использовать?
- 20. WPF .NET 4.5 Жесты
- 21. C# WPF лента: RibbonTextBox vs. TextBox
- 22. WPF 4.5 не показывает возможность открытия проекта в Microsoft Blend
- 23. Использование Caliburn Micro с Microsoft Ribbon Controls и RibbonApplicationMenu
- 24. Получить контроль над мышью над
- 25. WPF Бумагоподобный контроль
- 26. Какой контроль у меня есть над TypedFactory Windsor?
- 27. Контроль над версией Crontab?
- 28. Программный контроль над Firefox
- 29. Получить контроль над javascript
- 30. Обратный контроль над апплетом
я не мог получить метки, показанные в RibbonButton из RibbonQuickAccessToolBar, пока я не завернул "RibbonButton" s с DockPanel. –
Спасибо за рабочий пример. – mack