Loading...
Loading...
Implement Syncfusion WPF Ribbon component for modern desktop applications. Use this skill when creating ribbon interfaces in WPF with tabs, groups, buttons, menus, and galleries. Covers advanced features like application menus, backstage views, state persistence, multi-document ribbon merge, keyboard accessibility, touch support, and ribbon customization.
npx skill4agent add syncfusion/wpf-ui-components-skills syncfusion-wpf-ribbon<!-- MainWindow.xaml -->
<syncfusion:RibbonWindow x:Class="RibbonApp.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:syncfusion="http://schemas.syncfusion.com/wpf"
Title="Ribbon Application" Height="600" Width="800">
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="*"/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<!-- Ribbon Control -->
<syncfusion:Ribbon Grid.Row="0">
<!-- Home Tab -->
<syncfusion:RibbonTab Caption="Home">
<!-- File Operations Bar -->
<syncfusion:RibbonBar Header="File Operations">
<syncfusion:RibbonButton Label="New"
SmallIcon="Images/new.png"
Click="OnNewClick" />
<syncfusion:RibbonButton Label="Open"
SmallIcon="Images/open.png"
Click="OnOpenClick" />
<syncfusion:RibbonButton Label="Save"
SmallIcon="Images/save.png"
Click="OnSaveClick" />
</syncfusion:RibbonBar>
<!-- Formatting Bar -->
<syncfusion:RibbonBar Header="Formatting">
<syncfusion:RibbonComboBox Label="Font">
<syncfusion:RibbonComboBoxItem Content="Arial" />
<syncfusion:RibbonComboBoxItem Content="Times New Roman" />
<syncfusion:RibbonComboBoxItem Content="Courier New" />
</syncfusion:RibbonComboBox>
</syncfusion:RibbonBar>
</syncfusion:RibbonTab>
<!-- Edit Tab -->
<syncfusion:RibbonTab Caption="Edit">
<syncfusion:RibbonBar Header="Clipboard">
<syncfusion:RibbonButton Label="Cut" Click="OnCutClick" />
<syncfusion:RibbonButton Label="Copy" Click="OnCopyClick" />
<syncfusion:RibbonButton Label="Paste" Click="OnPasteClick" />
</syncfusion:RibbonBar>
</syncfusion:RibbonTab>
</syncfusion:Ribbon>
<!-- Main Content Area -->
<TextBox Grid.Row="1" AcceptsReturn="True" />
<StatusBar Grid.Row="2" Height="30" />
</Grid>
</syncfusion:RibbonWindow>// MainWindow.xaml.cs
using Syncfusion.Windows.Tools.Controls;
public partial class MainWindow : RibbonWindow
{
public MainWindow()
{
InitializeComponent();
}
private void OnNewClick(object sender, EventArgs e)
{
// Handle new document
}
private void OnOpenClick(object sender, EventArgs e)
{
// Handle open file
}
private void OnSaveClick(object sender, EventArgs e)
{
// Handle save file
}
}<syncfusion:Ribbon>
<syncfusion:Ribbon.ApplicationMenu>
<syncfusion:ApplicationMenu>
<syncfusion:MenuItem Header="New" />
<syncfusion:MenuItem Header="Open" />
<syncfusion:MenuItem Header="Save" />
<syncfusion:MenuItemSeparator />
<syncfusion:MenuItem Header="Exit" />
</syncfusion:ApplicationMenu>
</syncfusion:Ribbon.ApplicationMenu>
<syncfusion:RibbonTab Caption="Home">
<!-- Tab content -->
</syncfusion:RibbonTab>
</syncfusion:Ribbon><syncfusion:RibbonTab Caption="Tools">
<syncfusion:RibbonBar Header="Analysis">
<syncfusion:RibbonButton Label="Chart" />
<syncfusion:RibbonButton Label="Graph" />
</syncfusion:RibbonBar>
<syncfusion:RibbonBar Header="Data">
<syncfusion:RibbonButton Label="Sort" />
<syncfusion:RibbonButton Label="Filter" />
</syncfusion:RibbonBar>
</syncfusion:RibbonTab><syncfusion:SplitButton Label="Format">
<syncfusion:RibbonMenuItem Header="Bold" />
<syncfusion:RibbonMenuItem Header="Italic" />
<syncfusion:RibbonMenuItem Header="Underline" />
</syncfusion:SplitButton><syncfusion:RibbonButton Label="Save"
Command="{Binding SaveCommand}"
CommandParameter="All" />ApplicationMenuBackStageQuickAccessToolBarAutoPersistSaveRibbonState()LoadRibbonState()CaptionCaptionHeaderIsVisibleHeaderRibbonGroupDialogLauncherCommandLabelSmallIconMediumIconLargeIconIconClickCommandSizeFormIsCheckableLabelSelectedItemItemsSourceSelectionChangedTextLabelWidthContentLabelIsCheckedGroupNameItemsSourceItemTemplateItemSelectionChangedCommand