<UserControl x:Class="Office2016InspiredApplication.SpreadSheetControl"
             xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
             xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
             xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
             xmlns:d="http://schemas.microsoft.com/expression/blend/2008" 
             xmlns:telerik="http://schemas.telerik.com/2008/xaml/presentation"
             xmlns:viewModel="clr-namespace:Office2016InspiredApplication.ViewModel"
             xmlns:spreadsheetControls="clr-namespace:Telerik.Windows.Controls.Spreadsheet.Controls;assembly=Telerik.Windows.Controls.Spreadsheet"
             xmlns:spreadsheet="clr-namespace:Telerik.Windows.Controls.Spreadsheet;assembly=Telerik.Windows.Controls.Spreadsheet"
             xmlns:appearance="clr-namespace:Office2016InspiredApplication.Appearance"
             mc:Ignorable="d" 
             d:DesignHeight="300" d:DesignWidth="300">
    <UserControl.Resources>
        <telerik:BooleanToVisibilityConverter x:Key="BoolToVisibilityValueConverter" />
        <viewModel:MainViewModel x:Key="MainViewModel" />
    </UserControl.Resources>

    <Grid x:Name="LayoutRoot" >
        <Grid.RowDefinitions>
            <RowDefinition Height="Auto" />
            <RowDefinition Height="Auto" />
            <RowDefinition />
            <RowDefinition Height="Auto" />
        </Grid.RowDefinitions>

        <telerik:RadRibbonView Title="{Binding Path=Workbook.Name, ElementName=radSpreadsheet}"
                               x:Name="ribbonView"
                               DataContext="{Binding Path=CommandDescriptors, ElementName=radSpreadsheet}"
                               BackstageClippingElement="{Binding ElementName=LayoutRoot}">

            <telerik:RadRibbonView.Resources>
                <spreadsheet:FunctionsProvider x:Key="FunctionsProvider" />
            </telerik:RadRibbonView.Resources>

            <telerik:RadRibbonView.QuickAccessToolBar>
                <telerik:QuickAccessToolBar Style="{StaticResource QuickAccessToolBarStyle}">
                    <telerik:RadRibbonButton Text="Save" 
                                             ContentTemplate="{StaticResource SaveDataTemplate}" Style="{StaticResource QATRibbonButtonStyle}" 
                                             Size="Small"
                                             Command="{Binding Path=SaveFile.Command}"
                                             IsEnabled="{Binding Path=SaveFile.IsEnabled}" />

                    <telerik:RadRibbonButton Text="Undo"
                                             ContentTemplate="{StaticResource UndoDataTemplate}" Style="{StaticResource QATRibbonButtonStyle}" 
                                             Size="Small"
                                             Command="{Binding Path=Undo.Command}"
                                             IsEnabled="{Binding Path=Undo.IsEnabled}" />

                    <telerik:RadRibbonButton Text="Redo"
                                             ContentTemplate="{StaticResource RedoDataTemplate}" Style="{StaticResource QATRibbonButtonStyle}"
                                             Size="Small"
                                             Command="{Binding Path=Redo.Command}"
                                             IsEnabled="{Binding Path=Redo.IsEnabled}"/>
                </telerik:QuickAccessToolBar>
            </telerik:RadRibbonView.QuickAccessToolBar>

            <telerik:RadRibbonView.ApplicationButtonContent>
                <TextBlock Text="File" Foreground="White"/>
            </telerik:RadRibbonView.ApplicationButtonContent>
            <telerik:RadRibbonView.Backstage>
                <telerik:RadRibbonBackstage>
                    <telerik:RadRibbonBackstageItem Header="New"
                                            CloseOnClick="True"
                                            Icon="{telerik:IconResource IconRelativePath=16/new.png, IconSources={StaticResource SpreadsheetIconSources}}"
                                            Command="{Binding Path=NewFile.Command}"
                                            IsEnabled="{Binding Path=NewFile.IsEnabled}"
                                            IsSelectable="False" />
                    <telerik:RadRibbonBackstageItem Header="Open"
                                            CloseOnClick="True"
                                            Icon="{telerik:IconResource IconRelativePath=16/open.png, IconSources={StaticResource SpreadsheetIconSources}}"
                                            Command="{Binding Path=OpenFile.Command}"
                                            IsEnabled="{Binding Path=OpenFile.IsEnabled}"
                                            IsSelectable="False" />
                    <telerik:RadRibbonBackstageItem Header="Save"
                                            CloseOnClick="True"
                                            Icon="{telerik:IconResource IconRelativePath=16/save.png, IconSources={StaticResource SpreadsheetIconSources}}"
                                            Command="{Binding Path=SaveFile.Command}"
                                            IsEnabled="{Binding Path=SaveFile.IsEnabled}"
                                            IsSelectable="False" />
                    <telerik:RadRibbonBackstageItem IsGroupSeparator="True" />
                    <telerik:RadRibbonBackstageItem Header="Print" IsDefault="false">
                        <spreadsheetControls:PrintPreviewControl RadSpreadsheet="{Binding Path=RadSpreadsheet, Mode=OneTime}" />
                    </telerik:RadRibbonBackstageItem>
                </telerik:RadRibbonBackstage>
            </telerik:RadRibbonView.Backstage>

            <telerik:RadRibbonTab Header="Home">
                <telerik:RadRibbonGroup Header="Office2016 Color Variations"
                                        telerik:ScreenTip.Title="Office2016 Variations" DataContext="{StaticResource MainViewModel}">
                    <telerik:RadRibbonRadioButton IsChecked="True" Content="Colorful" Size="Large" Background="#FF227447" Style="{DynamicResource ColorVariationRadioButtonStyle}"
                                    Command="{Binding ChangeAppearanceCommand}">
                        <telerik:RadRibbonRadioButton.CommandParameter>
                            <appearance:AppearanceCommandParameter ColorVariation="Colorful" />
                        </telerik:RadRibbonRadioButton.CommandParameter>
                    </telerik:RadRibbonRadioButton>
                    <telerik:RadRibbonRadioButton Content="Dark Gray" Size="Large" Background="#FF444444" Style="{DynamicResource ColorVariationRadioButtonStyle}"
                                        Command="{Binding ChangeAppearanceCommand}">
                        <telerik:RadRibbonRadioButton.CommandParameter>
                            <appearance:AppearanceCommandParameter ColorVariation="Dark" />
                        </telerik:RadRibbonRadioButton.CommandParameter>
                    </telerik:RadRibbonRadioButton>
                    <telerik:RadRibbonRadioButton Content="White" Size="Large" Background="#FFFFFFFF" Style="{DynamicResource ColorVariationRadioButtonStyle}"
                                             Command="{Binding ChangeAppearanceCommand}">
                        <telerik:RadRibbonRadioButton.CommandParameter>
                            <appearance:AppearanceCommandParameter ColorVariation="White" />
                        </telerik:RadRibbonRadioButton.CommandParameter>
                    </telerik:RadRibbonRadioButton>
                </telerik:RadRibbonGroup>
                <telerik:RadRibbonGroup Header="Clipboard"
                                        telerik:ScreenTip.Title="Clipboard"
                                        IsEnabled="{Binding Path=ClipboardGroup.IsEnabled}">
                    <telerik:RadRibbonGroup.Variants>
                        <telerik:GroupVariant Priority="0" Variant="Large" />
                    </telerik:RadRibbonGroup.Variants>
                    <telerik:RadRibbonSplitButton x:Name="PasteButton" Command="{Binding Path=Paste.Command}"
                                                  IsEnabled="{Binding Path=Paste.IsEnabled}"
                                                  Size="Large"
                                                  Text="Paste"
                                                  LargeImage="{telerik:IconResource IconRelativePath=32/pasteActive.png, IconSources={StaticResource SpreadsheetIconSources}}"
                                                  telerik:ScreenTip.Description="Paste the contents of the Clipboard."
                                                  telerik:ScreenTip.Title="Paste (Ctrl+V)">
                        <telerik:RadRibbonSplitButton.DropDownContent>
                            <telerik:RadContextMenu BorderThickness="0" Padding="0" >
                                <telerik:RadMenuGroupItem Header="Paste" BorderThickness="0" Background="Transparent">
                                    <telerik:RadMenuItem Header="Paste" 
                                                         Command="{Binding Path=Paste.Command}"
                                                         IsEnabled="{Binding Path=Paste.IsEnabled, Mode=TwoWay}">
                                        <telerik:RadMenuItem.Icon>
                                            <Image Source="{telerik:IconResource IconRelativePath=16/pasteNormal.png, IconSources={StaticResource SpreadsheetIconSources}}" Width="16"/>
                                        </telerik:RadMenuItem.Icon>
                                    </telerik:RadMenuItem>
                                    <telerik:RadMenuItem Header="Formulas" 
                                                         Command="{Binding Path=PasteFormulas.Command}"
                                                         CommandParameter="Formulas"
                                                         IsEnabled="{Binding Path=PasteFormulas.IsEnabled, Mode=TwoWay}">
                                        <telerik:RadMenuItem.Icon>
                                            <Image Source="{telerik:IconResource IconRelativePath=16/pasteFormulas.png, IconSources={StaticResource SpreadsheetIconSources}}" Width="16"/>
                                        </telerik:RadMenuItem.Icon>
                                    </telerik:RadMenuItem>
                                    <telerik:RadMenuItem Header="Formulas &amp; Number Formatting" 
                                                         Command="{Binding Path=PasteFormulasAndNumberFormats.Command}"
                                                         CommandParameter="FormulasAndNumberFormats"
                                                         IsEnabled="{Binding Path=PasteFormulasAndNumberFormats.IsEnabled, Mode=TwoWay}">
                                        <telerik:RadMenuItem.Icon>
                                            <Image Source="{telerik:IconResource IconRelativePath=16/pasteFormulasNumberFormatting.png, IconSources={StaticResource SpreadsheetIconSources}}" Width="16"/>
                                        </telerik:RadMenuItem.Icon>
                                    </telerik:RadMenuItem>
                                    <telerik:RadMenuItem Header="Column Widths" 
                                                         Command="{Binding Path=PasteColumnWidths.Command}"
                                                         CommandParameter="ColumnWidths"
                                                         IsEnabled="{Binding Path=PasteColumnWidths.IsEnabled, Mode=TwoWay}">
                                        <telerik:RadMenuItem.Icon>
                                            <Image Source="{telerik:IconResource IconRelativePath=16/pasteKeepSourceColumnWidths.png, IconSources={StaticResource SpreadsheetIconSources}}" Width="16"/>
                                        </telerik:RadMenuItem.Icon>
                                    </telerik:RadMenuItem>
                                </telerik:RadMenuGroupItem>
                                <telerik:RadMenuGroupItem Header="Paste Values" BorderThickness="0" Background="Transparent" Margin="-1">
                                    <telerik:RadMenuItem Header="Values" 
                                                         Command="{Binding Path=PasteValues.Command}"
                                                         CommandParameter="Values"
                                                         IsEnabled="{Binding Path=PasteValues.IsEnabled, Mode=TwoWay}">
                                        <telerik:RadMenuItem.Icon>
                                            <Image Source="{telerik:IconResource IconRelativePath=16/pasteValues.png, IconSources={StaticResource SpreadsheetIconSources}}" Width="16"/>
                                        </telerik:RadMenuItem.Icon>
                                    </telerik:RadMenuItem>
                                    <telerik:RadMenuItem Header="Values &amp; Number Formatting" 
                                                         Command="{Binding Path=PasteValuesAndNumberFormats.Command}"
                                                         CommandParameter="ValuesAndNumberFormats"
                                                         IsEnabled="{Binding Path=PasteValuesAndNumberFormats.IsEnabled, Mode=TwoWay}">
                                        <telerik:RadMenuItem.Icon>
                                            <Image Source="{telerik:IconResource IconRelativePath=16/pasteValuesNumberFormatting.png, IconSources={StaticResource SpreadsheetIconSources}}" Width="16"/>
                                        </telerik:RadMenuItem.Icon>
                                    </telerik:RadMenuItem>
                                </telerik:RadMenuGroupItem>
                                <telerik:RadMenuGroupItem Header="Other Paste Options" BorderThickness="0" Background="Transparent" Margin="-1">
                                    <telerik:RadMenuItem Header="Formatting" 
                                                         Command="{Binding Path=PasteFormatting.Command}"
                                                         CommandParameter="Formats"
                                                         IsEnabled="{Binding Path=PasteFormatting.IsEnabled, Mode=TwoWay}">
                                        <telerik:RadMenuItem.Icon>
                                            <Image Source="{telerik:IconResource IconRelativePath=16/pasteFormatting.png, IconSources={StaticResource SpreadsheetIconSources}}" Width="16"/>
                                        </telerik:RadMenuItem.Icon>
                                    </telerik:RadMenuItem>
                                </telerik:RadMenuGroupItem>
                            </telerik:RadContextMenu>
                        </telerik:RadRibbonSplitButton.DropDownContent>

                    </telerik:RadRibbonSplitButton>
                    <StackPanel>
                        <telerik:RadRibbonButton Command="{Binding Path=Cut.Command}"
                                                 IsEnabled="{Binding Path=Cut.IsEnabled}"
                                                 Size="Medium"
                                                 SmallImage="{telerik:IconResource IconRelativePath=16/cut.png, IconSources={StaticResource SpreadsheetIconSources}}"
                                                 Text="Cut"
                                                 telerik:ScreenTip.Description="Cut the selection and put it on the Clipboard."
                                                 telerik:ScreenTip.Title="Cut" />

                        <telerik:RadRibbonButton Command="{Binding Path=Copy.Command}"
                                                 IsEnabled="{Binding Path=Copy.IsEnabled}"
                                                 Size="Medium"
                                                 SmallImage="{telerik:IconResource IconRelativePath=16/copy.png, IconSources={StaticResource SpreadsheetIconSources}}"
                                                 Text="Copy"
                                                 telerik:ScreenTip.Description="Copy the selection and put it on the Clipboard."
                                                 telerik:ScreenTip.Title="Copy" />
                    </StackPanel>
                </telerik:RadRibbonGroup>

                <telerik:RadRibbonGroup Header="Font"
                                        IsEnabled="{Binding Path=FontGroup.IsEnabled}"
                                        DialogLauncherVisibility="{Binding Path=ShowFormatCellsDialog.IsEnabled, Converter={StaticResource BoolToVisibilityValueConverter}}"
                                        DialogLauncherCommand="{Binding Path=ShowFormatCellsDialog.Command}"
                                        DialogLauncherCommandParameter="Font"
                                        telerik:ScreenTip.Description="Show the Font tab of the Format Cells dialog box."
                                        telerik:ScreenTip.Title="Format Cells: Font">
                    <telerik:RadRibbonGroup.Variants>
                        <telerik:GroupVariant Priority="0" Variant="Large" />
                    </telerik:RadRibbonGroup.Variants>
                    <telerik:RadOrderedWrapPanel>
                        <StackPanel Orientation="Horizontal">
                            <StackPanel.Resources>
                                <spreadsheetControls:UnitToDipConverter x:Key="unitToDipConverter" />
                                <spreadsheetControls:DipToUnitConverter x:Key="dipToUnitConverter" />
                                <spreadsheetControls:ThemeFontTypeToTextConverter x:Key="themeFontTypeToTextConverter" />
                            </StackPanel.Resources>

                            <telerik:RadRibbonComboBox telerik:ScreenTip.Title="Font"
                                                       telerik:ScreenTip.Description="Change the font family."
                                                       IsEditable="False"
                                                       CanAutocompleteSelectItems="False"
                                                       CanKeyboardNavigationSelectItems="False"
                                                       Width="132"
                                                       MaxDropDownHeight="400"
                                                       ItemsSource="{Binding ElementName=radSpreadsheet, Path=FontsProvider.RegisteredFonts}"
                                                       telerik:RadComboBoxExtensions.UIInteractionCommand="{Binding Path=SetFontFamily.Command}"
                                                       telerik:RadComboBoxExtensions.UIInteractionCommandParameter="{Binding RelativeSource={RelativeSource Self}, Path=SelectedItem}"
                                                       IsEnabled="{Binding Path=SetFontFamily.IsEnabled}"
                                                       SelectedValue="{Binding Path=SetFontFamily.SelectedValue, Mode=TwoWay}"
                                                       ScrollViewer.HorizontalScrollBarVisibility="Disabled">
                                <telerik:RadRibbonComboBox.ItemTemplate>
                                    <DataTemplate>
                                        <Grid>
                                            <Grid.ColumnDefinitions>
                                                <ColumnDefinition Width="*" />
                                                <ColumnDefinition Width="Auto" />
                                            </Grid.ColumnDefinitions>
                                            <TextBlock Text="{Binding Path=FontFamily.Source}" FontFamily="{Binding Path=FontFamily}" FontSize="12" />
                                            <TextBlock Text="{Binding Path=ThemeFontType, Converter={StaticResource themeFontTypeToTextConverter}}"
                                                       FontFamily="{Binding Path=FontFamily}" 
                                                       FontSize="12" 
                                                       Grid.Column="1"/>
                                        </Grid>
                                    </DataTemplate>
                                </telerik:RadRibbonComboBox.ItemTemplate>
                                <telerik:RadRibbonComboBox.ItemsPanel>
                                    <ItemsPanelTemplate>
                                        <VirtualizingStackPanel />
                                    </ItemsPanelTemplate>
                                </telerik:RadRibbonComboBox.ItemsPanel>
                            </telerik:RadRibbonComboBox>

                            <telerik:RadRibbonComboBox Width="62"
                                                       Margin="0"
                                                       MaxDropDownHeight="400"
                                                       IsEditable="False"
                                                       CanAutocompleteSelectItems="False"
                                                       CanKeyboardNavigationSelectItems="False"
                                                       IsEnabled="{Binding Path=SetFontSize.IsEnabled}"
                                                       IsTabStop="False"
                                                       ItemsSource="{Binding ElementName=radSpreadsheet, Path=FontsProvider.FontSizes}"
                                                       telerik:RadComboBoxExtensions.UIInteractionCommand="{Binding Path=SetFontSize.Command}"
                                                       telerik:RadComboBoxExtensions.UIInteractionCommandParameter="{Binding RelativeSource={RelativeSource Self}, Path=SelectedItem, Converter={StaticResource unitToDipConverter}, ConverterParameter=Point}"
                                                       SelectedValue="{Binding Path=SetFontSize.SelectedValue, Mode=TwoWay, Converter={StaticResource dipToUnitConverter}, ConverterParameter=Point}"
                                                       telerik:ScreenTip.Title="Font Size"
                                                       telerik:ScreenTip.Description="Change the size of your text."/>
                        </StackPanel>

                        <telerik:RadButtonGroup>
                            <telerik:RadRibbonButton Command="{Binding Path=IncreaseFontSize.Command}"
                                                     CommandParameter="{Binding Path=IncreaseFontSize.SelectedValue}"
                                                     IsEnabled="{Binding Path=IncreaseFontSize.IsEnabled}"
                                                     Size="Small" 
                                                     SmallImage="{telerik:IconResource IconRelativePath=16/fontSizeIncrease.png, IconSources={StaticResource SpreadsheetIconSources}}"
                                                     telerik:ScreenTip.Description="Increase the font size."
                                                     telerik:ScreenTip.Title="Increase Font Size" />

                            <telerik:RadRibbonButton Command="{Binding Path=DecreaseFontSize.Command}"
                                                     CommandParameter="{Binding Path=DecreaseFontSize.SelectedValue}"
                                                     IsEnabled="{Binding Path=DecreaseFontSize.IsEnabled}"
                                                     Size="Small"
                                                     SmallImage="{telerik:IconResource IconRelativePath=16/fontSizeDecrease.png, IconSources={StaticResource SpreadsheetIconSources}}"
                                                     telerik:ScreenTip.Description="Decrease the font size."
                                                     telerik:ScreenTip.Title="Decrease Font Size" />
                        </telerik:RadButtonGroup>

                        <telerik:RadButtonGroup x:Name="FontStylesGroup">
                            <telerik:RadButtonGroup.Resources>
                                <spreadsheetControls:UnderlineTypeToBooleanConverter x:Key="underlineTypeToBooleanConverter" />
                            </telerik:RadButtonGroup.Resources>

                            <telerik:RadRibbonToggleButton Command="{Binding Path=SetIsBold.Command}"
                                                           CommandParameter="{Binding Path=SetIsBold.SelectedValue}"
                                                           IsChecked="{Binding Path=SetIsBold.SelectedValue, Mode=TwoWay}"
                                                           IsEnabled="{Binding Path=SetIsBold.IsEnabled}"
                                                           Size="Small"
                                                           SmallImage="{telerik:IconResource IconRelativePath=16/bold.png, IconSources={StaticResource SpreadsheetIconSources}}"
                                                           telerik:ScreenTip.Description="Make the selected text bold."
                                                           telerik:ScreenTip.Title="Bold (Ctrl+B)" />

                            <telerik:RadRibbonToggleButton Command="{Binding Path=SetIsItalic.Command}"
                                                           CommandParameter="{Binding Path=SetIsItalic.SelectedValue}"
                                                           IsChecked="{Binding Path=SetIsItalic.SelectedValue, Mode=TwoWay}"
                                                           IsEnabled="{Binding Path=SetIsItalic.IsEnabled}"
                                                           Size="Small"
                                                           SmallImage="{telerik:IconResource IconRelativePath=16/italic.png, IconSources={StaticResource SpreadsheetIconSources}}"
                                                           telerik:ScreenTip.Description="Italicize the selected text."
                                                           telerik:ScreenTip.Title="Italic (Ctrl+I)" />

                            <telerik:RadRibbonToggleButton Command="{Binding Path=SetUnderline.Command}"
                                                           CommandParameter="{Binding Path=SetUnderline.SelectedValue}"
                                                           IsChecked="{Binding Path=SetUnderline.SelectedValue, Mode=TwoWay, Converter={StaticResource underlineTypeToBooleanConverter}, ConverterParameter=Single}"
                                                           IsEnabled="{Binding Path=SetUnderline.IsEnabled}"
                                                           Size="Small"
                                                           SmallImage="{telerik:IconResource IconRelativePath=16/underline.png, IconSources={StaticResource SpreadsheetIconSources}}"
                                                           telerik:ScreenTip.Description="Underline the selected text."
                                                           telerik:ScreenTip.Title="Underline (Ctrl+U)" />
                        </telerik:RadButtonGroup>

                        <telerik:RadButtonGroup>
                            <spreadsheetControls:BordersMenu RadSpreadsheet="{Binding ElementName=radSpreadsheet, Mode=OneTime}"
                                                             SelectedItemImage="{telerik:IconResource IconRelativePath=16/bottomBorder.png, IconSources={StaticResource SpreadsheetIconSources}}"/>
                        </telerik:RadButtonGroup>
                        <telerik:RadButtonGroup>
                            <telerik:RadColorPicker BorderThickness="0"
                                                    Margin="1 0 0 0"
                                                    AutomaticColor="Transparent"
                                                    NoColorText="No Fill"
                                                    telerik:ScreenTip.Title="Fill Color"
                                                    telerik:ScreenTip.Description="Color the background of selected cells."
                                                    HeaderPaletteItemsSource="{Binding ElementName=radSpreadsheet, Path=ColorPalette.HeaderPaletteItemsSource}"
                                                    MainPaletteItemsSource="{Binding ElementName=radSpreadsheet, Path=ColorPalette.MainPaletteItemsSource}"
                                                    MainPaletteOrientation="{Binding ElementName=radSpreadsheet, Path=ColorPalette.MainPaletteOrientation}"
                                                    RecentColorsVisibility="Visible"
                                                    IsEnabled="{Binding Path=SetFillColor.IsEnabled}"
                                                    IsRecentColorsActive="True"
                                                    SelectedColor="{Binding Path=SetFillColor.SelectedValue, Mode=TwoWay}"
                                                    Command="{Binding Path=SetFillColor.Command}"
                                                    CommandParameter="{Binding Path=SetFillColor.SelectedValue}">
                                <telerik:RadColorPicker.ContentTemplate>
                                    <DataTemplate>
                                        <Grid>
                                            <Image Source="{telerik:IconResource IconRelativePath=16/bucket.png, IconSources={StaticResource SpreadsheetIconSources}}" Stretch="None" Width="16" />
                                            <Rectangle Height="4"
                                                       HorizontalAlignment="Stretch"
                                                       VerticalAlignment="Bottom">
                                                <Rectangle.Fill>
                                                    <SolidColorBrush Color="{Binding}" />
                                                </Rectangle.Fill>
                                            </Rectangle>
                                        </Grid>
                                    </DataTemplate>
                                </telerik:RadColorPicker.ContentTemplate>
                                <telerik:RadColorPicker.AdditionalContent>
                                    <telerik:RadButton BorderThickness="0"
                                                       Background="Transparent"
                                                       Margin="0 -1 0 0"
                                                       HorizontalContentAlignment="Left"
                                                       IsEnabled="{Binding Path=ShowMoreColorsDialog.IsEnabled}"
                                                       spreadsheetControls:RadControlsExtensions.ShouldCloseParentPopupOnClick="True"
                                                       Command="{Binding Path=ShowMoreColorsDialog.Command}"
                                                       CommandParameter="{Binding Path=SetFillColor}">
                                        <StackPanel Orientation="Horizontal">
                                            <Image Source="{telerik:IconResource IconRelativePath=16/color.png, IconSources={StaticResource SpreadsheetIconSources}}" Width="16" Height="16" />
                                            <TextBlock Text="More Colors..." Margin="10 0 0 0" FontWeight="Normal" />
                                        </StackPanel>
                                    </telerik:RadButton>
                                </telerik:RadColorPicker.AdditionalContent>
                            </telerik:RadColorPicker>
                            <telerik:RadColorPicker BorderThickness="0"
                                                    Margin="0 0 1 0"
                                                    NoColorText="Automatic"
                                                    telerik:ScreenTip.Title="Text Highlight Color"
                                                    telerik:ScreenTip.Description="Change the text color."
                                                    HeaderPaletteItemsSource="{Binding ElementName=radSpreadsheet, Path=ColorPalette.HeaderPaletteItemsSource}"
                                                    MainPaletteItemsSource="{Binding ElementName=radSpreadsheet, Path=ColorPalette.MainPaletteItemsSource}"
                                                    MainPaletteOrientation="{Binding ElementName=radSpreadsheet, Path=ColorPalette.MainPaletteOrientation}"
                                                    SelectedColor="{Binding Path=SetForeColor.SelectedValue, Mode=TwoWay}"
                                                    IsEnabled="{Binding Path=SetForeColor.IsEnabled}"
                                                    Command="{Binding Path=SetForeColor.Command}"
                                                    CommandParameter="{Binding Path=SetForeColor.SelectedValue}">
                                <telerik:RadColorPicker.ContentTemplate>
                                    <DataTemplate>
                                        <Grid>
                                            <Image Source="{telerik:IconResource IconRelativePath=16/foregroundColor.png, IconSources={StaticResource SpreadsheetIconSources}}" Stretch="None" Width="16" />
                                            <Rectangle Height="3"
                                                       HorizontalAlignment="Stretch"
                                                       VerticalAlignment="Bottom">
                                                <Rectangle.Fill>
                                                    <SolidColorBrush Color="{Binding}" />
                                                </Rectangle.Fill>
                                            </Rectangle>
                                        </Grid>
                                    </DataTemplate>
                                </telerik:RadColorPicker.ContentTemplate>
                                <telerik:RadColorPicker.AdditionalContent>
                                    <telerik:RadButton BorderThickness="0"
                                                       Margin="0 -1 0 0"
                                                       Background="Transparent"
                                                       HorizontalContentAlignment="Left"
                                                       spreadsheetControls:RadControlsExtensions.ShouldCloseParentPopupOnClick="True"
                                                       IsEnabled="{Binding Path=ShowMoreColorsDialog.IsEnabled}"
                                                       Command="{Binding Path=ShowMoreColorsDialog.Command}"
                                                       CommandParameter="{Binding Path=SetForeColor}">
                                        <StackPanel Orientation="Horizontal">
                                            <Image Source="{telerik:IconResource IconRelativePath=16/color.png, IconSources={StaticResource SpreadsheetIconSources}}" Width="16" Height="16" />
                                            <TextBlock Text="More Colors..." Margin="10 0 0 0" FontWeight="Normal" />
                                        </StackPanel>
                                    </telerik:RadButton>
                                </telerik:RadColorPicker.AdditionalContent>
                            </telerik:RadColorPicker>

                        </telerik:RadButtonGroup>
                    </telerik:RadOrderedWrapPanel>
                </telerik:RadRibbonGroup>

                <telerik:RadRibbonGroup Header="Alignment"
                                        IsEnabled="{Binding Path=AlignmentGroup.IsEnabled}"
                                        DialogLauncherVisibility="{Binding Path=ShowFormatCellsDialog.IsEnabled, Converter={StaticResource BoolToVisibilityValueConverter}}"
                                        DialogLauncherCommand="{Binding Path=ShowFormatCellsDialog.Command}"
                                        DialogLauncherCommandParameter="Alignment"
                                        telerik:ScreenTip.Description="Show the Alignment tab of the Format Cells dialog box."
                                        telerik:ScreenTip.Title="Format Cells: Alignment">
                    <telerik:RadRibbonGroup.Variants>
                        <telerik:GroupVariant Priority="0" Variant="Large" />
                    </telerik:RadRibbonGroup.Variants>
                    <telerik:RadRibbonGroup.Resources>
                        <spreadsheetControls:RadHorizontalAlignmentToBooleanConverter x:Key="horizontalAlignmentToBooleanConverter" />
                        <spreadsheetControls:RadVerticalAlignmentToBooleanConverter x:Key="verticalAlignmentToBooleanConverter" />
                    </telerik:RadRibbonGroup.Resources>

                    <telerik:RadOrderedWrapPanel>
                        <telerik:RadButtonGroup >
                            <telerik:RadRibbonToggleButton Command="{Binding Path=SetVerticalAlignment.Command}"
                                                           CommandParameter="{Binding Path=SetVerticalAlignment.SelectedValue}"
                                                           IsChecked="{Binding Path=SetVerticalAlignment.SelectedValue, Mode=TwoWay, Converter={StaticResource verticalAlignmentToBooleanConverter}, ConverterParameter=Top}"
                                                           IsEnabled="{Binding Path=SetVerticalAlignment.IsEnabled}"
                                                           Size="Small"
                                                           SmallImage="{telerik:IconResource IconRelativePath=16/alignTop.png, IconSources={StaticResource SpreadsheetIconSources}}"
                                                           telerik:ScreenTip.Description="Align the text to the top of the cell."
                                                           telerik:ScreenTip.Title="Top Align" />

                            <telerik:RadRibbonToggleButton Command="{Binding Path=SetVerticalAlignment.Command}"
                                                           CommandParameter="{Binding Path=SetVerticalAlignment.SelectedValue}"
                                                           IsChecked="{Binding Path=SetVerticalAlignment.SelectedValue, Mode=TwoWay, Converter={StaticResource verticalAlignmentToBooleanConverter}, ConverterParameter=Center}"
                                                           IsEnabled="{Binding Path=SetVerticalAlignment.IsEnabled}"
                                                           Size="Small"
                                                           SmallImage="{telerik:IconResource IconRelativePath=16/alignMiddle.png, IconSources={StaticResource SpreadsheetIconSources}}"
                                                           telerik:ScreenTip.Description="Align text so that it is centered between the top and the bottom of the cell."
                                                           telerik:ScreenTip.Title="Middle Align" />

                            <telerik:RadRibbonToggleButton Command="{Binding Path=SetVerticalAlignment.Command}"
                                                           CommandParameter="{Binding Path=SetVerticalAlignment.SelectedValue}"
                                                           IsChecked="{Binding Path=SetVerticalAlignment.SelectedValue, Mode=TwoWay, Converter={StaticResource verticalAlignmentToBooleanConverter}, ConverterParameter=Bottom}"
                                                           IsEnabled="{Binding Path=SetVerticalAlignment.IsEnabled}"
                                                           Size="Small"
                                                           SmallImage="{telerik:IconResource IconRelativePath=16/alignBottom.png, IconSources={StaticResource SpreadsheetIconSources}}"
                                                           telerik:ScreenTip.Description="Align the text to the bottom of the cell."
                                                           telerik:ScreenTip.Title="Bottom Align" />
                        </telerik:RadButtonGroup>
                        <telerik:RadButtonGroup>
                            <telerik:RadRibbonToggleButton Command="{Binding Path=SetHorizontalAlignment.Command}"
                                                           CommandParameter="{Binding Path=SetHorizontalAlignment.SelectedValue}"
                                                           IsChecked="{Binding Path=SetHorizontalAlignment.SelectedValue, Mode=TwoWay, Converter={StaticResource horizontalAlignmentToBooleanConverter}, ConverterParameter=Left}"
                                                           IsEnabled="{Binding Path=SetHorizontalAlignment.IsEnabled}"
                                                           Size="Small"
                                                           SmallImage="{telerik:IconResource IconRelativePath=16/alignLeft.png, IconSources={StaticResource SpreadsheetIconSources}}"
                                                           telerik:ScreenTip.Description="Align text to the left."
                                                           telerik:ScreenTip.Title="Align Text Left" />

                            <telerik:RadRibbonToggleButton Command="{Binding Path=SetHorizontalAlignment.Command}"
                                                           CommandParameter="{Binding Path=SetHorizontalAlignment.SelectedValue}"
                                                           IsChecked="{Binding Path=SetHorizontalAlignment.SelectedValue, Mode=TwoWay, Converter={StaticResource horizontalAlignmentToBooleanConverter}, ConverterParameter=Center}"
                                                           IsEnabled="{Binding Path=SetHorizontalAlignment.IsEnabled}"
                                                           Size="Small"
                                                           SmallImage="{telerik:IconResource IconRelativePath=16/alignCenter.png, IconSources={StaticResource SpreadsheetIconSources}}"
                                                           telerik:ScreenTip.Description="Center text."
                                                           telerik:ScreenTip.Title="Center" />

                            <telerik:RadRibbonToggleButton Command="{Binding Path=SetHorizontalAlignment.Command}"
                                                           CommandParameter="{Binding Path=SetHorizontalAlignment.SelectedValue}"
                                                           IsChecked="{Binding Path=SetHorizontalAlignment.SelectedValue, Mode=TwoWay, Converter={StaticResource horizontalAlignmentToBooleanConverter}, ConverterParameter=Right}"
                                                           IsEnabled="{Binding Path=SetHorizontalAlignment.IsEnabled}"
                                                           Size="Small"
                                                           SmallImage="{telerik:IconResource IconRelativePath=16/alignRight.png, IconSources={StaticResource SpreadsheetIconSources}}"
                                                           telerik:ScreenTip.Description="Align text to the right."
                                                           telerik:ScreenTip.Title="Align Text Right" />
                        </telerik:RadButtonGroup>

                        <telerik:RadButtonGroup>
                            <telerik:RadRibbonButton Command="{Binding Path=DecreaseIndent.Command}"
                                                     CommandParameter="{Binding Path=DecreaseIndent.SelectedValue}"
                                                     IsEnabled="{Binding Path=DecreaseIndent.IsEnabled}"
                                                     Size="Small"
                                                     SmallImage="{telerik:IconResource IconRelativePath=16/indentDecrease.png, IconSources={StaticResource SpreadsheetIconSources}}"
                                                     telerik:ScreenTip.Description="Decrease the margin between the border and the text in the cell."
                                                     telerik:ScreenTip.Title="Decrease Indent" />

                            <telerik:RadRibbonButton Command="{Binding Path=IncreaseIndent.Command}"
                                                     CommandParameter="{Binding Path=IncreaseIndent.SelectedValue}"
                                                     IsEnabled="{Binding Path=IncreaseIndent.IsEnabled}"
                                                     Size="Small"
                                                     SmallImage="{telerik:IconResource IconRelativePath=16/indentIncrease.png, IconSources={StaticResource SpreadsheetIconSources}}"
                                                     telerik:ScreenTip.Description="Increase the margin between the border and the text in the cell."
                                                     telerik:ScreenTip.Title="Increase Indent" />

                        </telerik:RadButtonGroup>
                    </telerik:RadOrderedWrapPanel>

                    <telerik:Separator />

                    <telerik:RadOrderedWrapPanel>
                        <telerik:RadOrderedWrapPanel.Resources>
                            <telerik:InvertedBooleanConverter x:Key="InvertedBooleanConverter" />
                        </telerik:RadOrderedWrapPanel.Resources>
                        <telerik:RadRibbonToggleButton Command="{Binding Path=SetIsWrapped.Command}"
                                                       CommandParameter="{Binding Path=SetIsWrapped.SelectedValue}"
                                                       IsChecked="{Binding Path=SetIsWrapped.SelectedValue, Mode=TwoWay}"
                                                       IsEnabled="{Binding Path=SetIsWrapped.IsEnabled}"
                                                       Size="Medium"
                                                       SmallImage="{telerik:IconResource IconRelativePath=16/wrapText.png, IconSources={StaticResource SpreadsheetIconSources}}"
                                                       Text="Wrap Text"
                                                       telerik:ScreenTip.Description="Make all content visible within a cell by displaying it on multiple lines."
                                                       telerik:ScreenTip.Title="Wrap Text" />

                        <telerik:RadRibbonSplitButton x:Name="MergeAndCenterButton"
                                                      Command="{Binding Path=MergeAndCenter.Command}"
                                                      CommandParameter="{Binding Path=MergeAndCenter.SelectedValue, Converter={StaticResource InvertedBooleanConverter}}"
                                                      IsChecked="{Binding Path=MergeAndCenter.SelectedValue, Mode=TwoWay}"
                                                      IsEnabled="{Binding Path=MergeAndCenter.IsEnabled}"
                                                      IsToggle="True"
                                                      Size="Medium"
                                                      SmallImage="{telerik:IconResource IconRelativePath=16/mergeAndCenter.png, IconSources={StaticResource SpreadsheetIconSources}}"
                                                      Text="Merge &amp; Center"
                                                      telerik:ScreenTip.Description="Joins the selected cells into one larger cell and centers the contents in the new cell.&#10;                                                                                      This is often used to create labels that span multiple columns."
                                                      telerik:ScreenTip.Title="Merge &amp; Center">

                            <telerik:RadRibbonSplitButton.DropDownContent>
                                <telerik:RadContextMenu BorderThickness="0" Padding="0" >
                                    <telerik:RadMenuItem Command="{Binding Path=MergeAndCenter.Command}"
                                                         CommandParameter="{Binding Path=MergeAndCenter.SelectedValue}"
                                                         Header="Merge &amp; Center"
                                                         IsChecked="{Binding Path=MergeAndCenter.SelectedValue, Mode=TwoWay}"
                                                         IsEnabled="{Binding Path=MergeAndCenter.IsEnabled, Mode=TwoWay}"
                                                         telerik:ScreenTip.Description="Joins the selected cells into one larger cell and centers the contents in the new cell.&#10;                                                                     This is often used to create labels that span multiple columns."
                                                         telerik:ScreenTip.Title="Merge &amp; Center">
                                        <telerik:RadMenuItem.Icon>
                                            <Image Source="{telerik:IconResource IconRelativePath=16/mergeAndCenter.png, IconSources={StaticResource SpreadsheetIconSources}}" Width="16"/>
                                        </telerik:RadMenuItem.Icon>
                                    </telerik:RadMenuItem>

                                    <telerik:RadMenuItem Command="{Binding Path=MergeAcross.Command}"
                                                         Header="Merge Across"
                                                         IsEnabled="{Binding Path=MergeAcross.IsEnabled, Mode=TwoWay}"
                                                         telerik:ScreenTip.Description="Merge each row of the selected cells into a larger cell."
                                                         telerik:ScreenTip.Title="Merge Across">
                                        <telerik:RadMenuItem.Icon>
                                            <Image Source="{telerik:IconResource IconRelativePath=16/mergeAcross.png, IconSources={StaticResource SpreadsheetIconSources}}" Width="16"/>
                                        </telerik:RadMenuItem.Icon>
                                    </telerik:RadMenuItem>

                                    <telerik:RadMenuItem Command="{Binding Path=Merge.Command}"
                                                         Header="Merge Cells"
                                                         IsEnabled="{Binding Path=Merge.IsEnabled, Mode=TwoWay}"
                                                         telerik:ScreenTip.Description="Merge the selected cells into one cell."
                                                         telerik:ScreenTip.Title="Merge Cells">
                                        <telerik:RadMenuItem.Icon>
                                            <Image Source="{telerik:IconResource IconRelativePath=16/merge.png, IconSources={StaticResource SpreadsheetIconSources}}" Width="16"/>
                                        </telerik:RadMenuItem.Icon>
                                    </telerik:RadMenuItem>

                                    <telerik:RadMenuItem Command="{Binding Path=Unmerge.Command}"
                                                         Header="Unmerge Cells"
                                                         IsEnabled="{Binding Path=Unmerge.IsEnabled, Mode=TwoWay}"
                                                         telerik:ScreenTip.Description="Split the selected cells into new multiple cells."
                                                         telerik:ScreenTip.Title="Unmerge Cells">
                                        <telerik:RadMenuItem.Icon>
                                            <Image Source="{telerik:IconResource IconRelativePath=16/unmerge.png, IconSources={StaticResource SpreadsheetIconSources}}" Width="16"/>
                                        </telerik:RadMenuItem.Icon>
                                    </telerik:RadMenuItem>
                                </telerik:RadContextMenu>
                            </telerik:RadRibbonSplitButton.DropDownContent>
                        </telerik:RadRibbonSplitButton>
                    </telerik:RadOrderedWrapPanel>

                </telerik:RadRibbonGroup>

                <telerik:RadRibbonGroup Header="Number"
                                        IsEnabled="{Binding Path=NumberGroup.IsEnabled}"
                                        DialogLauncherVisibility="{Binding Path=ShowFormatCellsDialog.IsEnabled, Converter={StaticResource BoolToVisibilityValueConverter}}"
                                        DialogLauncherCommand="{Binding Path=ShowFormatCellsDialog.Command}"
                                        DialogLauncherCommandParameter="Number"
                                        telerik:ScreenTip.Description="Show the Number tab of the Format Cells dialog box."
                                        telerik:ScreenTip.Title="Format Cells: Number" >
                    <telerik:RadRibbonGroup.Variants>
                        <telerik:GroupVariant Priority="0" Variant="Large" />
                    </telerik:RadRibbonGroup.Variants>
                    <telerik:RadOrderedWrapPanel>

                        <spreadsheetControls:NumberFormatAutoCompleteComboBox IsEnabled="{Binding ElementName=radSpreadsheet, Path=CommandDescriptors.SetFormat.IsEnabled, Mode=TwoWay}"
                                                                              CellValueFormat="{Binding ElementName=radSpreadsheet, Path=CommandDescriptors.SetFormat.SelectedValue, Mode=TwoWay}"
                                                                              RadSpreadsheet="{Binding ElementName=radSpreadsheet, Mode=OneTime}"
                                                                              telerik:ScreenTip.Title="Number Format"
                                                                              telerik:ScreenTip.Description="Choose how the values in a cell are displayed: as a percentage, as currency, as a date or time, etc."/>

                        <telerik:RadButtonGroup Margin="0 0 3 0">
                            <telerik:RadRibbonSplitButton x:Name="AccountingNumberFormatButton"
                                                          telerik:ScreenTip.Title="Accounting Number Format"
                                                          telerik:ScreenTip.Description="Choose an alternate currency format for the selected cell. &#13;&#13;For instance, choose Euros instead of Dollars."
                                                          Size="Small" 
                                                          Command="{Binding Path=SetStyle.Command}"
                                                          CommandParameter="Currency"
                                                          IsEnabled="{Binding Path=SetStyle.IsEnabled}"
                                                          SmallImage="{telerik:IconResource IconRelativePath=16/accountingNumberFormat.png, IconSources={StaticResource SpreadsheetIconSources}}">
                                <telerik:RadRibbonSplitButton.DropDownContent>
                                    <telerik:RadContextMenu BorderThickness="0" Padding="0" >
                                        <telerik:RadMenuItem 
                                            Header="$ English (U.S.)" 
                                            Command="{Binding Path=SetFormat.Command}" 
                                            CommandParameter="_([$$-409]* #,##0.00_);_([$$-409]* (#,##0.00);_([$$-409]* &quot;-&quot;??_);_(@_)"
                                            IsEnabled="{Binding Path=SetFormat.IsEnabled, Mode=TwoWay}"/>

                                        <telerik:RadMenuItem 
                                            Header="&#163; English (U.K.)" 
                                            Command="{Binding Path=SetFormat.Command}" 
                                            CommandParameter="_-[$&#163;-809]* #,##0.00_-;-[$&#163;-809]* #,##0.00_-;_-[$&#163;-809]* &quot;-&quot;??_-;_-@_-"
                                            IsEnabled="{Binding Path=SetFormat.IsEnabled, Mode=TwoWay}"/>

                                        <telerik:RadMenuItem 
                                            Header="&#8364; Euro (&#8364; 123)"
                                            Command="{Binding Path=SetFormat.Command}"
                                            CommandParameter="_([$&#8364;-2] * #,##0.00_);_([$&#8364;-2] * (#,##0.00);_([$&#8364;-2] * &quot;-&quot;??_);_(@_)"
                                            IsEnabled="{Binding Path=SetFormat.IsEnabled, Mode=TwoWay}"/>

                                        <telerik:RadMenuItem
                                            Header="&#165; Chinese (PRC)"
                                            Command="{Binding Path=SetFormat.Command}"
                                            CommandParameter="_ [$&#165;-804]* #,##0.00_ ;_ [$&#165;-804]* -#,##0.00_ ;_ [$&#165;-804]* &quot;-&quot;??_ ;_ @_ "
                                            IsEnabled="{Binding Path=SetFormat.IsEnabled, Mode=TwoWay}"/>

                                        <telerik:RadMenuItem
                                            Header="fr. French (Switzerland)"
                                            Command="{Binding Path=SetFormat.Command}"
                                            CommandParameter="_ [$fr.-100C] * #,##0.00_ ;_ [$fr.-100C] * -#,##0.00_ ;_ [$fr.-100C] * &quot;-&quot;??_ ;_ @_ "
                                            IsEnabled="{Binding Path=SetFormat.IsEnabled, Mode=TwoWay}"/>

                                        <telerik:RadMenuSeparatorItem />

                                        <telerik:RadMenuItem
                                            Header="More Accounting Formats..."
                                            Command="{Binding Path=ShowFormatCellsDialogNumberTab.Command}"
                                            CommandParameter="_($* #,##0.00_);_($* (#,##0.00);_($* &quot;-&quot;??_);_(@_)"
                                            IsEnabled="{Binding Path=ShowFormatCellsDialogNumberTab.IsEnabled, Mode=TwoWay}"/>
                                    </telerik:RadContextMenu>
                                </telerik:RadRibbonSplitButton.DropDownContent>
                            </telerik:RadRibbonSplitButton>
                            <telerik:RadRibbonButton 
                                telerik:ScreenTip.Title="Percent Style (Ctrl+Shift+%)"
                                telerik:ScreenTip.Description="Display the value of the cell as a percentage."
                                Size="Small"
                                Command="{Binding Path=SetStyle.Command}"
                                CommandParameter="Percent"
                                IsEnabled="{Binding Path=SetStyle.IsEnabled}"
                                SmallImage="{telerik:IconResource IconRelativePath=16/percent.png, IconSources={StaticResource SpreadsheetIconSources}}">

                            </telerik:RadRibbonButton>
                            <telerik:RadRibbonButton
                                telerik:ScreenTip.Title="Comma Style"
                                telerik:ScreenTip.Description="Display the value of the cell with a thousands separator. &#13;&#13;This will change the format of the cell to Accounting without a currency symbol."
                                Size="Small"
                                Command="{Binding Path=SetStyle.Command}" 
                                CommandParameter="Comma"
                                IsEnabled="{Binding Path=SetStyle.IsEnabled}"
                                SmallImage="{telerik:IconResource IconRelativePath=16/edit-comma.png, IconSources={StaticResource SpreadsheetIconSources}}">

                            </telerik:RadRibbonButton>
                        </telerik:RadButtonGroup>

                        <telerik:RadButtonGroup>

                            <telerik:RadRibbonButton 
                                telerik:ScreenTip.Title="Increase Decimal"
                                Command="{Binding Path=IncreaseDecimalPlaces.Command}" 
                                IsEnabled="{Binding Path=IncreaseDecimalPlaces.IsEnabled}"
                                telerik:ScreenTip.Description="Show more precise values by showing more decimal places."
                                Size="Small"
                                SmallImage="{telerik:IconResource IconRelativePath=16/decimal.png, IconSources={StaticResource SpreadsheetIconSources}}">

                            </telerik:RadRibbonButton>
                            <telerik:RadRibbonButton
                                telerik:ScreenTip.Title="Decrease Decimal"
                                Command="{Binding Path=DecreaseDecimalPlaces.Command}" 
                                IsEnabled="{Binding Path=DecreaseDecimalPlaces.IsEnabled}"
                                telerik:ScreenTip.Description="Show less precise values by showing fewer decimal places."
                                Size="Small"
                                SmallImage="{telerik:IconResource IconRelativePath=16/decimalDecrease.png, IconSources={StaticResource SpreadsheetIconSources}}">

                            </telerik:RadRibbonButton>
                        </telerik:RadButtonGroup>
                    </telerik:RadOrderedWrapPanel>
                </telerik:RadRibbonGroup>

                <telerik:RadRibbonGroup Header="Styles"
                                        IsEnabled="{Binding Path=StylesGroup.IsEnabled}">
                    <telerik:RadRibbonGroup.Variants>
                        <telerik:GroupVariant Variant="Large" Priority="0" />
                    </telerik:RadRibbonGroup.Variants>
                    <spreadsheetControls:StyleGallery RadSpreadsheet="{Binding ElementName=radSpreadsheet, Mode=OneTime}"/>
                </telerik:RadRibbonGroup>

                <telerik:RadRibbonGroup Header="Cells"
                                        IsEnabled="{Binding Path=CellsGroup.IsEnabled}">
                    <telerik:RadRibbonGroup.Variants>
                        <telerik:GroupVariant Variant="Large" Priority="0" />
                    </telerik:RadRibbonGroup.Variants>
                    <telerik:RadRibbonDropDownButton x:Name="InsertCellsButton"
                                                     IsEnabled="{Binding Path=CellsGroupInsert.IsEnabled}"
                                                     LargeImage="{telerik:IconResource IconRelativePath=32/cellsInsert.png, IconSources={StaticResource SpreadsheetIconSources}}"
                                                     Size="Large"
                                                     Text="Insert"
                                                     telerik:ScreenTip.Description="Insert cells, rows, or columns into the sheet or table."
                                                     telerik:ScreenTip.Title="Insert Cells">

                        <telerik:RadRibbonDropDownButton.DropDownContent>
                            <telerik:RadContextMenu BorderThickness="0" Padding="0" >
                                <telerik:RadMenuItem Header="Insert Cells..."
                                                     Command="{Binding Path=InsertCells.Command}" 
                                                     IsEnabled="{Binding Path=InsertCells.IsEnabled, Mode=TwoWay}"
                                                     telerik:ScreenTip.Description="Add new rows, columns, cells or sheets to your workbook.&#10;                                                                                         New rows will be added above the selection and new columns will be added to the left of the selection.&#10;                                                                                         Add three columns at once by selecting three existing columns first; this also works with rows."
                                                     telerik:ScreenTip.Title="Insert Cells">
                                    <telerik:RadMenuItem.Icon>
                                        <Image Source="{telerik:IconResource IconRelativePath=16/cellsInsert.png, IconSources={StaticResource SpreadsheetIconSources}}" Width="16" />
                                    </telerik:RadMenuItem.Icon>
                                </telerik:RadMenuItem>

                                <telerik:RadMenuSeparatorItem />

                                <telerik:RadMenuItem Header="Insert Sheet Rows"
                                                     Command="{Binding Path=InsertRows.Command}"
                                                     IsEnabled="{Binding Path=InsertRows.IsEnabled, Mode=TwoWay}">
                                    <telerik:RadMenuItem.Icon>
                                        <Image Source="{telerik:IconResource IconRelativePath=16/rowsInsert.png, IconSources={StaticResource SpreadsheetIconSources}}" Width="16"/>
                                    </telerik:RadMenuItem.Icon>
                                </telerik:RadMenuItem>

                                <telerik:RadMenuItem Header="Insert Sheet Columns"
                                                     Command="{Binding Path=InsertColumns.Command}"
                                                     IsEnabled="{Binding Path=InsertColumns.IsEnabled, Mode=TwoWay}">
                                    <telerik:RadMenuItem.Icon>
                                        <Image Source="{telerik:IconResource IconRelativePath=16/columnsInsert.png, IconSources={StaticResource SpreadsheetIconSources}}" Width="16"/>
                                    </telerik:RadMenuItem.Icon>
                                </telerik:RadMenuItem>

                                <telerik:RadMenuSeparatorItem />

                                <telerik:RadMenuItem Header="Insert Sheet"
                                                     Command="{Binding Path=InsertSheet.Command}"
                                                     CommandParameter="Worksheet"
                                                     IsEnabled="{Binding Path=InsertSheet.IsEnabled, Mode=TwoWay}"
                                                     ToolTipService.ToolTip="Insert Worksheet (F11)">
                                    <telerik:RadMenuItem.Icon>
                                        <Image Source="{telerik:IconResource IconRelativePath=16/sheetInsert.png, IconSources={StaticResource SpreadsheetIconSources}}" Width="16"/>
                                    </telerik:RadMenuItem.Icon>
                                </telerik:RadMenuItem>

                            </telerik:RadContextMenu>
                        </telerik:RadRibbonDropDownButton.DropDownContent>
                    </telerik:RadRibbonDropDownButton>

                    <telerik:RadRibbonDropDownButton x:Name="DeleteCellsButton"
                                                     IsEnabled="{Binding Path=CellsGroupDelete.IsEnabled}"
                                                     LargeImage="{telerik:IconResource IconRelativePath=32/cellsRemove.png, IconSources={StaticResource SpreadsheetIconSources}}"
                                                     Size="Large"
                                                     Text="Delete"
                                                     telerik:ScreenTip.Description="Delete cells, rows, or columns from the sheet or table."
                                                     telerik:ScreenTip.Title="Delete Cells">
                        <telerik:RadRibbonDropDownButton.DropDownContent>
                            <telerik:RadContextMenu BorderThickness="0" Padding="0" >

                                <telerik:RadMenuItem Header="Delete Cells..."
                                                     Command="{Binding Path=RemoveCells.Command}"
                                                     IsEnabled="{Binding Path=RemoveCells.IsEnabled, Mode=TwoWay}"
                                                     telerik:ScreenTip.Description="Delete rows, columns or cells."
                                                     telerik:ScreenTip.Title="Delete Cells">
                                    <telerik:RadMenuItem.Icon>
                                        <Image Source="{telerik:IconResource IconRelativePath=16/cellsRemove.png, IconSources={StaticResource SpreadsheetIconSources}}" Width="16"/>
                                    </telerik:RadMenuItem.Icon>
                                </telerik:RadMenuItem>

                                <telerik:RadMenuSeparatorItem />

                                <telerik:RadMenuItem Header="Delete Sheet Rows"
                                                     Command="{Binding Path=RemoveRows.Command}"
                                                     IsEnabled="{Binding Path=RemoveRows.IsEnabled, Mode=TwoWay}">
                                    <telerik:RadMenuItem.Icon>
                                        <Image Source="{telerik:IconResource IconRelativePath=16/rowsRemove.png, IconSources={StaticResource SpreadsheetIconSources}}" Width="16"/>
                                    </telerik:RadMenuItem.Icon>
                                </telerik:RadMenuItem>

                                <telerik:RadMenuItem Header="Delete Sheet Columns"
                                                     Command="{Binding Path=RemoveColumns.Command}"
                                                     IsEnabled="{Binding Path=RemoveColumns.IsEnabled, Mode=TwoWay}">
                                    <telerik:RadMenuItem.Icon>
                                        <Image Source="{telerik:IconResource IconRelativePath=16/columnsRemove.png, IconSources={StaticResource SpreadsheetIconSources}}" Width="16"/>
                                    </telerik:RadMenuItem.Icon>
                                </telerik:RadMenuItem>

                                <telerik:RadMenuSeparatorItem />

                                <telerik:RadMenuItem Header="Delete Sheet"
                                                     Command="{Binding Path=RemoveSheet.Command}"
                                                     IsEnabled="{Binding Path=RemoveSheet.IsEnabled, Mode=TwoWay}">
                                    <telerik:RadMenuItem.Icon>
                                        <Image Source="{telerik:IconResource IconRelativePath=16/sheetRemove.png, IconSources={StaticResource SpreadsheetIconSources}}" Width="16"/>
                                    </telerik:RadMenuItem.Icon>
                                </telerik:RadMenuItem>

                            </telerik:RadContextMenu>
                        </telerik:RadRibbonDropDownButton.DropDownContent>
                    </telerik:RadRibbonDropDownButton>

                    <telerik:RadRibbonDropDownButton x:Name="FormatButton"
                                                     IsEnabled="{Binding Path=CellsGroupFormat.IsEnabled}"
                                                     LargeImage="{telerik:IconResource IconRelativePath=32/cellsFormat.png, IconSources={StaticResource SpreadsheetIconSources}}"
                                                     Size="Large"
                                                     Text="Format"
                                                     telerik:ScreenTip.Description="Change the row height or column width, organize sheets, or protect or hide cells."
                                                     telerik:ScreenTip.Title="Format">
                        <telerik:RadRibbonDropDownButton.DropDownContent>
                            <telerik:RadContextMenu BorderThickness="0" Padding="0">
                                <telerik:RadMenuGroupItem Header="Cells Size" BorderThickness="0" Background="Transparent" Margin="-1">

                                    <telerik:RadMenuItem Command="{Binding Path=SetRowsHeight.Command}"
                                                         Header="Row Height..." 
                                                         IsEnabled="{Binding Path=SetRowsHeight.IsEnabled, Mode=TwoWay}">
                                        <telerik:RadMenuItem.Icon>
                                            <Image Source="{telerik:IconResource IconRelativePath=16/rowHeight.png, IconSources={StaticResource SpreadsheetIconSources}}" Width="16"/>
                                        </telerik:RadMenuItem.Icon>
                                    </telerik:RadMenuItem>

                                    <telerik:RadMenuItem Command="{Binding Path=AutoFitRowsHeight.Command}"
                                                         Header="AutoFit Row Height"
                                                         IsEnabled="{Binding Path=AutoFitRowsHeight.IsEnabled, Mode=TwoWay}" />

                                    <telerik:RadMenuItem Command="{Binding Path=SetDefaultRowHeight.Command}"
                                                         Header="Default Height..."
                                                         IsEnabled="{Binding Path=SetDefaultRowHeight.IsEnabled, Mode=TwoWay}" />

                                    <telerik:RadMenuSeparatorItem />

                                    <telerik:RadMenuItem Command="{Binding Path=SetColumnsWidth.Command}"
                                                         Header="Column Width..."
                                                         IsEnabled="{Binding Path=SetColumnsWidth.IsEnabled, Mode=TwoWay}">
                                        <telerik:RadMenuItem.Icon>
                                            <Image Source="{telerik:IconResource IconRelativePath=16/columnWidth.png, IconSources={StaticResource SpreadsheetIconSources}}" Width="16"/>
                                        </telerik:RadMenuItem.Icon>
                                    </telerik:RadMenuItem>

                                    <telerik:RadMenuItem Command="{Binding Path=AutoFitColumnsWidth.Command}"
                                                         Header="AutoFit Column Width"
                                                         IsEnabled="{Binding Path=AutoFitColumnsWidth.IsEnabled, Mode=TwoWay}" />

                                    <telerik:RadMenuItem Command="{Binding Path=SetDefaultColumnWidth.Command}"
                                                         Header="Default Width..."
                                                         IsEnabled="{Binding Path=SetDefaultColumnWidth.IsEnabled, Mode=TwoWay}" />

                                    <telerik:RadMenuSeparatorItem />

                                    <telerik:RadMenuItem Command="{Binding Path=HideRows.Command}"
                                                         Header="Hide Rows"
                                                         IsEnabled="{Binding Path=HideRows.IsEnabled, Mode=TwoWay}" />

                                    <telerik:RadMenuItem Command="{Binding Path=HideColumns.Command}"
                                                         Header="Hide Columns"
                                                         IsEnabled="{Binding Path=HideColumns.IsEnabled, Mode=TwoWay}" />

                                    <telerik:RadMenuItem Command="{Binding Path=UnhideRows.Command}"
                                                         Header="Unhide Rows"
                                                         IsEnabled="{Binding Path=UnhideRows.IsEnabled, Mode=TwoWay}" />

                                    <telerik:RadMenuItem Command="{Binding Path=UnhideColumns.Command}"
                                                         Header="Unhide Columns"
                                                         IsEnabled="{Binding Path=UnhideColumns.IsEnabled, Mode=TwoWay}" />

                                    <telerik:RadMenuSeparatorItem />

                                    <telerik:RadMenuItem Command="{Binding Path=ShowFormatCellsDialog.Command}"
                                                         Header="Format Cells..."
                                                         IsEnabled="{Binding Path=ShowFormatCellsDialog.IsEnabled, Mode=TwoWay}"
                                                         telerik:ScreenTip.Description="Datasheet formatting">
                                        <telerik:RadMenuItem.Icon>
                                            <Image Source="{telerik:IconResource IconRelativePath=16/formatCells.png, IconSources={StaticResource SpreadsheetIconSources}}" Width="16"/>
                                        </telerik:RadMenuItem.Icon>
                                    </telerik:RadMenuItem>
                                </telerik:RadMenuGroupItem>
                            </telerik:RadContextMenu>
                        </telerik:RadRibbonDropDownButton.DropDownContent>
                    </telerik:RadRibbonDropDownButton>
                </telerik:RadRibbonGroup>

                <telerik:RadRibbonGroup Header="Editing"
                                        IsEnabled="{Binding Path=EditingGroup.IsEnabled}">
                    <telerik:RadRibbonGroup.Variants>
                        <telerik:GroupVariant Variant="Large" Priority="0" />
                    </telerik:RadRibbonGroup.Variants>
                    <telerik:RadOrderedWrapPanel>

                        <telerik:RadRibbonDropDownButton x:Name="FillButton"
                                                         Size="Medium"
                                                         Text="Fill"
                                                         SmallImage="{telerik:IconResource IconRelativePath=16/fillDown.png, IconSources={StaticResource SpreadsheetIconSources}}"
                                                         telerik:ScreenTip.Description="Continue a pattern into one or more adjacent cells. &#13;&#13;You can fill cells in any direction and into any range of adjacent cells."
                                                         telerik:ScreenTip.Title="Fill">
                            <telerik:RadRibbonDropDownButton.DropDownContent>
                                <telerik:RadContextMenu BorderThickness="0" Padding="0" >

                                    <telerik:RadMenuItem Header="Down"
                                                         ToolTipService.ToolTip="Fill Down (Ctrl+D)"
                                                         Command="{Binding Path=FillDown.Command}"
                                                         IsEnabled="{Binding Path=FillDown.IsEnabled, Mode=TwoWay}">
                                        <telerik:RadMenuItem.Icon>
                                            <Image Source="{telerik:IconResource IconRelativePath=16/fillDown.png, IconSources={StaticResource SpreadsheetIconSources}}" Width="16"/>
                                        </telerik:RadMenuItem.Icon>
                                    </telerik:RadMenuItem>
                                    <telerik:RadMenuItem Header="Right"
                                                         ToolTipService.ToolTip="Fill Right (Ctrl+R)"
                                                         Command="{Binding Path=FillRight.Command}"
                                                         IsEnabled="{Binding Path=FillRight.IsEnabled, Mode=TwoWay}">
                                        <telerik:RadMenuItem.Icon>
                                            <Image Source="{telerik:IconResource IconRelativePath=16/fillRight.png, IconSources={StaticResource SpreadsheetIconSources}}" Width="16"/>
                                        </telerik:RadMenuItem.Icon>
                                    </telerik:RadMenuItem>

                                    <telerik:RadMenuItem Header="Up"
                                                         ToolTipService.ToolTip="Fill Up"
                                                         Command="{Binding Path=FillUp.Command}"
                                                         IsEnabled="{Binding Path=FillUp.IsEnabled, Mode=TwoWay}">
                                        <telerik:RadMenuItem.Icon>
                                            <Image Source="{telerik:IconResource IconRelativePath=16/fillUp.png, IconSources={StaticResource SpreadsheetIconSources}}" Width="16"/>
                                        </telerik:RadMenuItem.Icon>
                                    </telerik:RadMenuItem>

                                    <telerik:RadMenuItem Header="Left"
                                                         ToolTipService.ToolTip="Fill Left"
                                                         Command="{Binding Path=FillLeft.Command}"
                                                         IsEnabled="{Binding Path=FillLeft.IsEnabled, Mode=TwoWay}">
                                        <telerik:RadMenuItem.Icon>
                                            <Image Source="{telerik:IconResource IconRelativePath=16/fillLeft.png, IconSources={StaticResource SpreadsheetIconSources}}" Width="16"/>
                                        </telerik:RadMenuItem.Icon>
                                    </telerik:RadMenuItem>

                                    <telerik:RadMenuItem Header="Series..." 
                                                         ToolTipService.ToolTip="Fill Series"
                                                         Command="{Binding Path=ShowSeriesDialog.Command}"
                                                         IsEnabled="{Binding Path=ShowSeriesDialog.IsEnabled, Mode=TwoWay}"/>
                                </telerik:RadContextMenu>
                            </telerik:RadRibbonDropDownButton.DropDownContent>
                        </telerik:RadRibbonDropDownButton>

                        <telerik:RadRibbonDropDownButton x:Name="ClearButton"
                                                         Size="Medium"
                                                         Text="Clear"
                                                         SmallImage="{telerik:IconResource IconRelativePath=16/clear.png, IconSources={StaticResource SpreadsheetIconSources}}"
                                                         telerik:ScreenTip.Description="Delete everything from the cell, or selectively remove the formatting, the contents, or the comments."
                                                         telerik:ScreenTip.Title="Clear">
                            <telerik:RadRibbonDropDownButton.DropDownContent>
                                <telerik:RadContextMenu BorderThickness="0" Padding="0">

                                    <telerik:RadMenuItem Header="Clear All"
                                                         Command="{Binding Path=Clear.Command}"
                                                         IsEnabled="{Binding Path=Clear.IsEnabled, Mode=TwoWay}"
                                                         telerik:ScreenTip.Description="Clear everything from the selected cells. &#13;&#13;All contents, formatting, and comments are cleared from the selected cells."
                                                         telerik:ScreenTip.Title="Clear All">
                                        <telerik:RadMenuItem.Icon>
                                            <Image Source="{telerik:IconResource IconRelativePath=16/clear.png, IconSources={StaticResource SpreadsheetIconSources}}" Width="16"/>
                                        </telerik:RadMenuItem.Icon>
                                    </telerik:RadMenuItem>

                                    <telerik:RadMenuItem Header="Clear Formats"
                                                         Command="{Binding Path=Clear.Command}"
                                                         CommandParameter="Formats"
                                                         IsEnabled="{Binding Path=Clear.IsEnabled, Mode=TwoWay}"
                                                         telerik:ScreenTip.Description="Clear only the formatting that is applied to the selected cells."
                                                         telerik:ScreenTip.Title="Clear Formats">
                                        <telerik:RadMenuItem.Icon>
                                            <Image Source="{telerik:IconResource IconRelativePath=16/clearFormats.png, IconSources={StaticResource SpreadsheetIconSources}}" Width="16"/>
                                        </telerik:RadMenuItem.Icon>
                                    </telerik:RadMenuItem>

                                    <telerik:RadMenuItem Header="Clear Contents" 
                                                         Command="{Binding Path=Clear.Command}"
                                                         CommandParameter="Contents"
                                                         IsEnabled="{Binding Path=Clear.IsEnabled, Mode=TwoWay}"
                                                         telerik:ScreenTip.Description="Clear only the contents in the selected cells. &#13;&#13;The formatting and comments are not cleared."
                                                         telerik:ScreenTip.Title="Clear Contents (Del)"/>

                                    <telerik:RadMenuItem Header="Clear Hyperlinks" 
                                                         Command="{Binding Path=Clear.Command}"
                                                         CommandParameter="Hyperlinks"
                                                         IsEnabled="{Binding Path=Clear.IsEnabled, Mode=TwoWay}"
                                                         telerik:ScreenTip.Description="Clear the hyperlinks from the selected cells."
                                                         telerik:ScreenTip.Title="Clear Hyperlinks"/>

                                    <telerik:RadMenuSeparatorItem />

                                    <telerik:RadMenuItem Command="{Binding Path=RemoveHyperlink.Command}"
                                                         IsEnabled="{Binding Path=RemoveHyperlink.IsEnabled, Mode=TwoWay}"
                                                         Header="Remove Hyperlink">
                                        <telerik:RadMenuItem.Icon>
                                            <Image Source="{telerik:IconResource IconRelativePath=16/removeHyperlink.png, IconSources={StaticResource SpreadsheetIconSources}}" Width="16"/>
                                        </telerik:RadMenuItem.Icon>
                                    </telerik:RadMenuItem>
                                </telerik:RadContextMenu>
                            </telerik:RadRibbonDropDownButton.DropDownContent>
                        </telerik:RadRibbonDropDownButton>
                    </telerik:RadOrderedWrapPanel>

                    <telerik:RadRibbonDropDownButton IsEnabled="{Binding Path=SortAndFilterGroup.IsEnabled, Mode=TwoWay}"
                                                     LargeImage="{telerik:IconResource IconRelativePath=32/sortAndFilter.png, IconSources={StaticResource SpreadsheetIconSources}}"
                                                     Size="Large"
                                                     Text="Sort &amp; Filter"
                                                     telerik:ScreenTip.Description="Organize your data so it's easier to analize. You can sort the selected data from smallest to largest, largest to smallest or filter out specific values."
                                                     telerik:ScreenTip.Title="Sort &amp; Filter">
                        <telerik:RadRibbonDropDownButton.DropDownContent>
                            <telerik:RadContextMenu BorderThickness="0" Padding="0">
                                <telerik:RadMenuGroupItem BorderThickness="0" Background="Transparent" Margin="-1">

                                    <telerik:RadMenuItem Command="{Binding Path=Sort.Command}"
                                                         CommandParameter="Ascending"
                                                         Header="Sort A to Z" 
                                                         IsEnabled="{Binding Path=Sort.IsEnabled, Mode=TwoWay}"
                                                         telerik:ScreenTip.Description="Lowest to highest."
                                                         telerik:ScreenTip.Title="Sort A to Z">
                                        <telerik:RadMenuItem.Icon>
                                            <Image Source="{telerik:IconResource IconRelativePath=16/sortAscending.png, IconSources={StaticResource SpreadsheetIconSources}}" Width="16"/>
                                        </telerik:RadMenuItem.Icon>
                                    </telerik:RadMenuItem>

                                    <telerik:RadMenuItem Command="{Binding Path=Sort.Command}"
                                                         CommandParameter="Descending"
                                                         Header="Sort Z to A" 
                                                         IsEnabled="{Binding Path=Sort.IsEnabled, Mode=TwoWay}"
                                                         telerik:ScreenTip.Description="Highest to lowest."
                                                         telerik:ScreenTip.Title="Sort Z to A">
                                        <telerik:RadMenuItem.Icon>
                                            <Image Source="{telerik:IconResource IconRelativePath=16/sortDescending.png, IconSources={StaticResource SpreadsheetIconSources}}" Width="16"/>
                                        </telerik:RadMenuItem.Icon>
                                    </telerik:RadMenuItem>

                                    <telerik:RadMenuItem Command="{Binding Path=ShowSortingDialog.Command}"
                                                         CommandParameter="Descending"
                                                         Header="Custom sort..." 
                                                         IsEnabled="{Binding Path=ShowSortingDialog.IsEnabled, Mode=TwoWay}"
                                                         telerik:ScreenTip.Title="Sort"
                                                         telerik:ScreenTip.Description="Shows the Sort dialog box to sort data based on several criteria at once.">
                                        <telerik:RadMenuItem.Icon>
                                            <Image Source="{telerik:IconResource IconRelativePath=16/customSort.png, IconSources={StaticResource SpreadsheetIconSources}}" Width="16"/>
                                        </telerik:RadMenuItem.Icon>
                                    </telerik:RadMenuItem>

                                    <telerik:RadMenuSeparatorItem />

                                    <telerik:RadMenuItem Command="{Binding Path=SetFilterRange.Command}"
                                                         IsEnabled="{Binding Path=SetFilterRange.IsEnabled, Mode=TwoWay}"
                                                         Header="Filter"
                                                         telerik:ScreenTip.Title="Filter"
                                                         telerik:ScreenTip.Description="Turn on filtering for the selected cells. Then, click the arrow in the column header to narrow down the data.">
                                        <telerik:RadMenuItem.Icon>
                                            <Image Source="{telerik:IconResource IconRelativePath=16/filter.png, IconSources={StaticResource SpreadsheetIconSources}}" Width="16"/>
                                        </telerik:RadMenuItem.Icon>
                                    </telerik:RadMenuItem>

                                    <telerik:RadMenuItem Command="{Binding Path=ClearFilters.Command}"
                                                         IsEnabled="{Binding Path=ClearFilters.IsEnabled, Mode=TwoWay}"
                                                         Header="Clear"
                                                         telerik:ScreenTip.Title="Clear"
                                                         telerik:ScreenTip.Description="Clear the filter for the current range of data.">
                                        <telerik:RadMenuItem.Icon>
                                            <Image Source="{telerik:IconResource IconRelativePath=16/filterClear.png, IconSources={StaticResource SpreadsheetIconSources}}" Width="16"/>
                                        </telerik:RadMenuItem.Icon>
                                    </telerik:RadMenuItem>

                                    <telerik:RadMenuItem Command="{Binding Path=ReapplyFilters.Command}"
                                                         IsEnabled="{Binding Path=ReapplyFilters.IsEnabled, Mode=TwoWay}"
                                                         Header="Reapply"
                                                         telerik:ScreenTip.Title="Reapply"
                                                         telerik:ScreenTip.Description="Reapply the filter on the current range so that changes you've made are included.">
                                        <telerik:RadMenuItem.Icon>
                                            <Image Source="{telerik:IconResource IconRelativePath=16/filterReapply.png, IconSources={StaticResource SpreadsheetIconSources}}" Width="16"/>
                                        </telerik:RadMenuItem.Icon>
                                    </telerik:RadMenuItem>

                                </telerik:RadMenuGroupItem>
                            </telerik:RadContextMenu>
                        </telerik:RadRibbonDropDownButton.DropDownContent>
                    </telerik:RadRibbonDropDownButton>

                    <telerik:RadRibbonButton Command="{Binding Path=ShowFindAndReplaceDialog.Command}" 
                                             CommandParameter="Find"
                                             Content="Find"
                                             Size="Large"
                                             LargeImage="{telerik:IconResource IconRelativePath=32/findAndSelect.png, IconSources={StaticResource SpreadsheetIconSources}}"
                                             telerik:ScreenTip.Title="Find"
                                             telerik:ScreenTip.Description="Use advanced search options to replace text or pick other ways to narrow your search."/>
                </telerik:RadRibbonGroup>
            </telerik:RadRibbonTab>

            <telerik:RadRibbonTab Header="Insert">
                <telerik:RadRibbonGroup Header="Links"
                                        IsEnabled="{Binding Path=LinksGroup.IsEnabled}">
                    <telerik:RadRibbonGroup.Variants>
                        <telerik:GroupVariant Priority="0" Variant="Large" />
                    </telerik:RadRibbonGroup.Variants>
                    <telerik:RadRibbonButton Command="{Binding Path=ShowHyperlinkDialog.Command}"
                                             IsEnabled="{Binding Path=ShowHyperlinkDialog.IsEnabled}"
                                             Content="Hyperlink"
                                             Size="Large"
                                             LargeImage="{telerik:IconResource IconRelativePath=32/insertHyperlink.png, IconSources={StaticResource SpreadsheetIconSources}}"
                                             telerik:ScreenTip.Title="Add a Hyperlink"
                                             telerik:ScreenTip.Description="Create a link in your document for quick access to webpages and files.&#13;&#13;Hyperlinks can also take you to places in your document."/>
                </telerik:RadRibbonGroup>
                <telerik:RadRibbonGroup Header="Illustrations">
                    <telerik:RadRibbonButton Command="{Binding Path=InsertPicture.Command}"
                                             IsEnabled="{Binding Path=InsertPicture.IsEnabled}"
                                             Content="Pictures"
                                             Size="Large"
                                             LargeImage="{telerik:IconResource IconRelativePath=32/picturesIcon.png, IconSources={StaticResource SpreadsheetIconSources}}"
                                             telerik:ScreenTip.Title="From File"
                                             telerik:ScreenTip.Description="Insert pictures from your computer or from other computers that you're connected to."/>
                </telerik:RadRibbonGroup>
            </telerik:RadRibbonTab>

            <telerik:RadRibbonTab Header="Page Layout">
                <telerik:RadRibbonGroup Header="Themes"
                                        IsEnabled="{Binding Path=ThemesGroup.IsEnabled}"
                                        telerik:ScreenTip.Title="Themes">
                    <telerik:RadRibbonDropDownButton Size="Large"
                                                     Text="Themes"                  
                                                     telerik:ScreenTip.Title="Themes"
                                                     telerik:ScreenTip.Description="Pick a new theme to give your document instant style and just the right personality. &#13;&#13;Each theme uses a unique set of colors, fonts and effects to create a consistent look and feel."
                                                     IsOpen="{Binding ElementName=ThemeGallery, Path=IsParentDropDownOpened, Mode=TwoWay}" >
                        <telerik:RadRibbonDropDownButton.Content>
                            <spreadsheetControls:SmallThemePreviewControl RadSpreadsheet="{Binding ElementName=radSpreadsheet, Mode=OneTime}" />
                        </telerik:RadRibbonDropDownButton.Content>
                        <telerik:RadRibbonDropDownButton.DropDownContent>
                            <spreadsheetControls:ThemeGallery x:Name="ThemeGallery" 
                                                              RadSpreadsheet="{Binding ElementName=radSpreadsheet, Mode=OneTime}" />
                        </telerik:RadRibbonDropDownButton.DropDownContent>
                    </telerik:RadRibbonDropDownButton>
                    <telerik:RadOrderedWrapPanel>
                        <telerik:RadRibbonDropDownButton Size="Medium" MinWidth="73" HorizontalContentAlignment="Stretch"
                                                         Text="Colors"
                                                         telerik:ScreenTip.Title="Theme Colors"
                                                         telerik:ScreenTip.Description="Quickly change all the colors used in your document by picking a different color palette. &#13;&#13;This will update the colors available to you in the color picker along with any theme colors in your document. No matter what palette you choose, your document will look perfectly coordinated."
                                                         IsOpen="{Binding ElementName=ColorGallery, Path=IsParentDropDownOpened, Mode=TwoWay}" >
                            <telerik:RadRibbonDropDownButton.Content>
                                <spreadsheetControls:SmallThemeColorPreviewControl RadSpreadsheet="{Binding ElementName=radSpreadsheet, Mode=OneTime}" />
                            </telerik:RadRibbonDropDownButton.Content>
                            <telerik:RadRibbonDropDownButton.DropDownContent>
                                <spreadsheetControls:ColorGallery x:Name="ColorGallery" RadSpreadsheet="{Binding ElementName=radSpreadsheet, Mode=OneTime}" />
                            </telerik:RadRibbonDropDownButton.DropDownContent>
                        </telerik:RadRibbonDropDownButton>

                        <telerik:RadRibbonDropDownButton Size="Medium" MinWidth="73" HorizontalContentAlignment="Stretch"
                                                         Text="Fonts"                  
                                                         telerik:ScreenTip.Title="Theme Fonts"
                                                         telerik:ScreenTip.Description="Quickly change the text in your document by picking a new font set. &#13;&#13;This is an easy way to change all of your text at once. For this to work, your text must be formatted using the 'body' and 'heading' fonts."
                                                         IsOpen="{Binding ElementName=FontGallery, Path=IsParentDropDownOpened, Mode=TwoWay}" >
                            <telerik:RadRibbonDropDownButton.Content>
                                <spreadsheetControls:SmallThemeFontPreviewControl RadSpreadsheet="{Binding ElementName=radSpreadsheet, Mode=OneTime}" />
                            </telerik:RadRibbonDropDownButton.Content>
                            <telerik:RadRibbonDropDownButton.DropDownContent>
                                <spreadsheetControls:FontGallery x:Name="FontGallery" RadSpreadsheet="{Binding ElementName=radSpreadsheet, Mode=OneTime}" />
                            </telerik:RadRibbonDropDownButton.DropDownContent>
                        </telerik:RadRibbonDropDownButton>
                    </telerik:RadOrderedWrapPanel>

                </telerik:RadRibbonGroup>
                <telerik:RadRibbonGroup Header="Page Setup"
                                        DialogLauncherVisibility="{Binding Path=ShowPageSetupDialog.IsEnabled, Converter={StaticResource BoolToVisibilityValueConverter}}"
                                        DialogLauncherCommand="{Binding Path=ShowPageSetupDialog.Command}"
                                        DialogLauncherCommandParameter="Page">
                    <telerik:RadRibbonDropDownButton Size="Large" 
                                                     Text="Print Area"
                                                     LargeImage="{telerik:IconResource IconRelativePath=32/printArea.png, IconSources={StaticResource SpreadsheetIconSources}}"
                                                     x:Name="PrintAreaButton"
                                                     telerik:ScreenTip.Title="Print Area"
                                                     telerik:ScreenTip.Description="Select an area of the sheet you'd like to print.">
                        <telerik:RadRibbonDropDownButton.DropDownContent>
                            <telerik:RadContextMenu BorderThickness="0" Padding="0">
                                <telerik:RadMenuItem Header="Set Print Area"
                                                     Command="{Binding Path=SetPrintArea.Command}"
                                                     IsEnabled="{Binding Path=SetPrintArea.IsEnabled}">
                                    <telerik:RadMenuItem.Icon>
                                        <Image Source="{telerik:IconResource IconRelativePath=16/setPrintArea.png, IconSources={StaticResource SpreadsheetIconSources}}" Width="16" Stretch="None" />
                                    </telerik:RadMenuItem.Icon>
                                </telerik:RadMenuItem>
                                <telerik:RadMenuItem Header="Clear Print Area"
                                                     Command="{Binding Path=ClearPrintArea.Command}"/>
                                <telerik:RadMenuItem Header="Add to Print Area"
                                                     Command="{Binding Path=AddToPrintArea.Command}"
                                                     IsEnabled="{Binding Path=AddToPrintArea.IsEnabled, Mode=TwoWay}"/>
                            </telerik:RadContextMenu>
                        </telerik:RadRibbonDropDownButton.DropDownContent>
                    </telerik:RadRibbonDropDownButton>
                    <telerik:RadRibbonDropDownButton Size="Large" 
                                                     Text="Breaks"
                                                     LargeImage="{telerik:IconResource IconRelativePath=32/breaks.png, IconSources={StaticResource SpreadsheetIconSources}}"
                                                     x:Name="BreaksButton"
                                                     telerik:ScreenTip.Title="Breaks"
                                                     telerik:ScreenTip.Description="Add a break where you want the next page to begin in the printed copy. &#13;&#13;Your page break will be inserted above and to the left of your selection.">
                        <telerik:RadRibbonDropDownButton.DropDownContent>
                            <telerik:RadContextMenu BorderThickness="0" Padding="0">
                                <telerik:RadMenuItem Header="Insert Page Break"
                                                     Command="{Binding Path=InsertPageBreak.Command}"
                                                     IsEnabled="{Binding Path=InsertPageBreak.IsEnabled, Mode=TwoWay}"/>
                                <telerik:RadMenuItem Header="Remove Page Break"
                                                     Command="{Binding Path=RemovePageBreak.Command}"
                                                     IsEnabled="{Binding Path=RemovePageBreak.IsEnabled, Mode=TwoWay}"/>
                                <telerik:RadMenuSeparatorItem />
                                <telerik:RadMenuItem Header="Reset All Page Breaks"
                                                     Command="{Binding Path=ResetAllPageBreaks.Command}" />
                            </telerik:RadContextMenu>
                        </telerik:RadRibbonDropDownButton.DropDownContent>
                    </telerik:RadRibbonDropDownButton>
                </telerik:RadRibbonGroup>

                <telerik:RadRibbonGroup Header="Sheet Options"
                                        DialogLauncherVisibility="{Binding Path=ShowPageSetupDialog.IsEnabled, Converter={StaticResource BoolToVisibilityValueConverter}}"
                                        DialogLauncherCommand="{Binding Path=ShowPageSetupDialog.Command}"
                                        DialogLauncherCommandParameter="Page">

                    <StackPanel Margin="2">
                        <TextBlock Text="Gridlines" Margin="0 0 0 2" />
                        <telerik:RadWrapPanel Orientation="Vertical" Height="68">
                            <CheckBox Content="View" Margin="2" 
                                  Command="{Binding Path=ShowGridlines.Command}"
                                  IsChecked="{Binding Path=ShowGridlines.SelectedValue, Mode=TwoWay}"
                                  IsEnabled="{Binding Path=ShowGridlines.IsEnabled}"/>
                            <CheckBox Content="Print" Margin="2" 
                                  Command="{Binding Path=PrintGridlines.Command}"
                                  IsChecked="{Binding Path=PrintGridlines.SelectedValue, Mode=TwoWay}"
                                  IsEnabled="{Binding Path=PrintGridlines.IsEnabled}"/>
                        </telerik:RadWrapPanel>
                    </StackPanel>

                    <telerik:Separator />

                    <StackPanel Margin="2">
                        <TextBlock Text="Headings" Margin="0 0 0 2"/>
                        <telerik:RadWrapPanel Orientation="Vertical" Height="68">
                            <CheckBox Content="View" Margin="2" 
                                  Command="{Binding Path=ShowRowColumnHeadings.Command}"
                                  IsChecked="{Binding Path=ShowRowColumnHeadings.SelectedValue, Mode=TwoWay}"
                                  IsEnabled="{Binding Path=ShowRowColumnHeadings.IsEnabled}"/>
                            <CheckBox Content="Print" Margin="2" 
                                  Command="{Binding Path=PrintRowColumnHeadings.Command}"
                                  IsChecked="{Binding Path=PrintRowColumnHeadings.SelectedValue, Mode=TwoWay}"
                                  IsEnabled="{Binding Path=PrintRowColumnHeadings.IsEnabled}"/>
                        </telerik:RadWrapPanel>
                    </StackPanel>

                </telerik:RadRibbonGroup>
            </telerik:RadRibbonTab>

            <telerik:RadRibbonTab Header="Formulas">
                <telerik:RadRibbonGroup Header="Function Library"
                                        IsEnabled="{Binding Path=FunctionLibraryGroup.IsEnabled}"
                                        telerik:ScreenTip.Title="Function Library">
                    <telerik:RadRibbonButton CollapseToSmall="WhenGroupIsSmall"
                                             Command="{Binding Path=ShowInsertFunctionDialog.Command}"
                                             IsEnabled="{Binding Path=ShowInsertFunctionDialog.IsEnabled}"
                                             LargeImage="{telerik:IconResource IconRelativePath=32/insertFunction.png, IconSources={StaticResource SpreadsheetIconSources}}"
                                             Size="Large"
                                             Text="Insert Function"
                                             telerik:ScreenTip.Title="Insert Function"
                                             telerik:ScreenTip.Description="Edit the formula in current cell by choosing functions and editing the arguments." />

                    <telerik:Separator />

                    <telerik:RadRibbonDropDownButton x:Name="AutoSumButton"
                                                     LargeImage="{telerik:IconResource IconRelativePath=32/autoSum.png, IconSources={StaticResource SpreadsheetIconSources}}"
                                                     Size="Large"
                                                     Text="Auto Sum"
                                                     telerik:ScreenTip.Description="Click here to display the results of simple calculations, such as Average or Maximum Value, after the selected cells."
                                                     telerik:ScreenTip.Title="Auto Sum">
                        <telerik:RadRibbonDropDownButton.DropDownContent>
                            <telerik:RadContextMenu BorderThickness="0" Padding="0" >

                                <telerik:RadMenuItem Command="{Binding Path=ApplyFunction.Command}"
                                                     CommandParameter="Sum"
                                                     Header="Sum"
                                                     IsEnabled="{Binding Path=ApplyFunction.IsEnabled, Mode=TwoWay}"
                                                     telerik:ScreenTip.Description="Display the sum of the selected cells directly after the selected cells"
                                                     telerik:ScreenTip.Title="Sum">
                                    <telerik:RadMenuItem.Icon>
                                        <Image Source="{telerik:IconResource IconRelativePath=16/sum.png, IconSources={StaticResource SpreadsheetIconSources}}" Stretch="None" />
                                    </telerik:RadMenuItem.Icon>
                                </telerik:RadMenuItem>

                                <telerik:RadMenuItem Command="{Binding Path=ApplyFunction.Command}"
                                                     CommandParameter="Average"
                                                     Header="Average"
                                                     IsEnabled="{Binding Path=ApplyFunction.IsEnabled, Mode=TwoWay}" />

                                <telerik:RadMenuItem Command="{Binding Path=ApplyFunction.Command}"
                                                     CommandParameter="Max"
                                                     Header="Max"
                                                     IsEnabled="{Binding Path=ApplyFunction.IsEnabled, Mode=TwoWay}" />

                                <telerik:RadMenuItem Command="{Binding Path=ApplyFunction.Command}"
                                                     CommandParameter="Min"
                                                     Header="Min"
                                                     IsEnabled="{Binding Path=ApplyFunction.IsEnabled, Mode=TwoWay}" />

                                <telerik:RadMenuSeparatorItem />

                                <telerik:RadMenuItem Command="{Binding Path=ShowInsertFunctionDialog.Command}"
                                                     Header="More Functions..."
                                                     IsEnabled="{Binding Path=ShowInsertFunctionDialog.IsEnabled, Mode=TwoWay}" />

                            </telerik:RadContextMenu>
                        </telerik:RadRibbonDropDownButton.DropDownContent>
                    </telerik:RadRibbonDropDownButton>

                    <telerik:RadRibbonDropDownButton x:Name="RecentlyUsed"
                                                     LargeImage="{telerik:IconResource IconRelativePath=32/recentlyUsed.png, IconSources={StaticResource SpreadsheetIconSources}}"
                                                     Size="Large"
                                                     Text="Recently Used"
                                                     telerik:ScreenTip.Description="Browse and select from a list of recently used functions."
                                                     telerik:ScreenTip.Title="Recently Used">
                        <telerik:RadRibbonDropDownButton.DropDownContent>
                            <spreadsheetControls:FunctionsMenu Category="MostRecentlyUsed"
                                                               DataContext="{Binding}"
                                                               Items="{Binding Source={StaticResource FunctionsProvider}, Path=MostRecentlyUsed}" />
                        </telerik:RadRibbonDropDownButton.DropDownContent>
                    </telerik:RadRibbonDropDownButton>

                    <telerik:RadRibbonDropDownButton x:Name="Financial"
                                                     telerik:ScreenTip.Title="Financial"
                                                     telerik:ScreenTip.Description="Add a financial function to your sheet."
                                                     Text="Financial"
                                                     Size="Large"
                                                     LargeImage="{telerik:IconResource IconRelativePath=32/financial.png, IconSources={StaticResource SpreadsheetIconSources}}">
                        <telerik:RadRibbonDropDownButton.DropDownContent>
                            <spreadsheetControls:FunctionsMenu Category="Financial"
                                                               DataContext="{Binding}"
                                                               BorderThickness="0"
                                                               Items="{Binding Source={StaticResource FunctionsProvider}, Path=Financial}" />
                        </telerik:RadRibbonDropDownButton.DropDownContent>
                    </telerik:RadRibbonDropDownButton>

                    <telerik:RadRibbonDropDownButton x:Name="Logical"
                                                     telerik:ScreenTip.Title="Logical"
                                                     telerik:ScreenTip.Description="Add a logical function to your sheet."
                                                     Text="Logical"
                                                     Size="Large"
                                                     LargeImage="{telerik:IconResource IconRelativePath=32/logical.png, IconSources={StaticResource SpreadsheetIconSources}}">
                        <telerik:RadRibbonDropDownButton.DropDownContent>
                            <spreadsheetControls:FunctionsMenu Category="Logical"
                                                               DataContext="{Binding}"
                                                               BorderThickness="0"
                                                               Items="{Binding Source={StaticResource FunctionsProvider}, Path=Logical}" />
                        </telerik:RadRibbonDropDownButton.DropDownContent>
                    </telerik:RadRibbonDropDownButton>

                    <telerik:RadRibbonDropDownButton x:Name="Text"
                                                     telerik:ScreenTip.Title="Text"
                                                     telerik:ScreenTip.Description="Add a text function to your sheet."
                                                     Text="Text"
                                                     Size="Large"
                                                     LargeImage="{telerik:IconResource IconRelativePath=32/text.png, IconSources={StaticResource SpreadsheetIconSources}}">
                        <telerik:RadRibbonDropDownButton.DropDownContent>
                            <spreadsheetControls:FunctionsMenu Category="Text"
                                                               DataContext="{Binding}"
                                                               BorderThickness="0"
                                                               Items="{Binding Source={StaticResource FunctionsProvider}, Path=Text}" />
                        </telerik:RadRibbonDropDownButton.DropDownContent>
                    </telerik:RadRibbonDropDownButton>

                    <telerik:RadRibbonDropDownButton x:Name="DateAndTime"
                                                     telerik:ScreenTip.Title="Date &amp; Time"
                                                     telerik:ScreenTip.Description="Add a time function to your sheet."
                                                     Text="Date &amp; Time"
                                                     Size="Large"
                                                     LargeImage="{telerik:IconResource IconRelativePath=32/dateTime.png, IconSources={StaticResource SpreadsheetIconSources}}">
                        <telerik:RadRibbonDropDownButton.DropDownContent>
                            <spreadsheetControls:FunctionsMenu Category="DateTime"
                                                               DataContext="{Binding}"
                                                               BorderThickness="0"
                                                               Items="{Binding Source={StaticResource FunctionsProvider}, Path=DateTime}" />
                        </telerik:RadRibbonDropDownButton.DropDownContent>
                    </telerik:RadRibbonDropDownButton>

                    <telerik:RadRibbonDropDownButton x:Name="LookupAndReference"
                                                     telerik:ScreenTip.Title="Lookup &amp; Reference"
                                                     telerik:ScreenTip.Description="Add a lookup or reference function to your sheet."
                                                     Text="Lookup &amp; Reference"
                                                     Size="Large"
                                                     LargeImage="{telerik:IconResource IconRelativePath=32/lookupReference.png, IconSources={StaticResource SpreadsheetIconSources}}">
                        <telerik:RadRibbonDropDownButton.DropDownContent>
                            <spreadsheetControls:FunctionsMenu Category="LookupReference"
                                                               DataContext="{Binding}"
                                                               BorderThickness="0"
                                                               Items="{Binding Source={StaticResource FunctionsProvider}, Path=LookupReference}" />
                        </telerik:RadRibbonDropDownButton.DropDownContent>
                    </telerik:RadRibbonDropDownButton>

                    <telerik:RadRibbonDropDownButton x:Name="MathAndTrig"
                                                     telerik:ScreenTip.Title="Math &amp; Trig"
                                                     telerik:ScreenTip.Description="Add a math or trigonometry function to your sheet."
                                                     Text="Math &amp; Trig"
                                                     Size="Large"
                                                     LargeImage="{telerik:IconResource IconRelativePath=32/mathTrig.png, IconSources={StaticResource SpreadsheetIconSources}}">
                        <telerik:RadRibbonDropDownButton.DropDownContent>
                            <spreadsheetControls:FunctionsMenu Category="MathTrig"
                                                               DataContext="{Binding}"
                                                               BorderThickness="0"
                                                               Items="{Binding Source={StaticResource FunctionsProvider}, Path=MathTrig}" />
                        </telerik:RadRibbonDropDownButton.DropDownContent>
                    </telerik:RadRibbonDropDownButton>

                    <telerik:RadRibbonDropDownButton x:Name="MoreFunctionsButton"
                                                     telerik:ScreenTip.Title="More Functions"
                                                     telerik:ScreenTip.Description="Browse more functions from categories like Statistical, Engineering or Information."
                                                     Text="More Functions"
                                                     Size="Large"
                                                     LargeImage="{telerik:IconResource IconRelativePath=32/moreFunctions.png, IconSources={StaticResource SpreadsheetIconSources}}">
                        <telerik:RadRibbonDropDownButton.DropDownContent>
                            <telerik:RadContextMenu BorderThickness="0" Padding="0" >
                                <telerik:RadMenuItem Header="Statistical">
                                    <telerik:RadMenuItem.Icon>
                                        <Image Source="{telerik:IconResource IconRelativePath=16/statistical.png, IconSources={StaticResource SpreadsheetIconSources}}" Width="16"/>
                                    </telerik:RadMenuItem.Icon>
                                    <telerik:RadMenuGroupItem BorderThickness="0">
                                        <spreadsheetControls:FunctionsMenu Category="Statistical"
                                                                           Margin="0"
                                                                           DataContext="{Binding}"
                                                                           Items="{Binding Source={StaticResource FunctionsProvider}, Path=Statistical}" />
                                    </telerik:RadMenuGroupItem>
                                </telerik:RadMenuItem>

                                <telerik:RadMenuItem Header="Engineering">
                                    <telerik:RadMenuItem.Icon>
                                        <Image Source="{telerik:IconResource IconRelativePath=16/engineering.png, IconSources={StaticResource SpreadsheetIconSources}}" Width="16"/>
                                    </telerik:RadMenuItem.Icon>
                                    <telerik:RadMenuGroupItem BorderThickness="0">
                                        <spreadsheetControls:FunctionsMenu Category="Engineering"
                                                                           Margin="0"
                                                                           DataContext="{Binding}"
                                                                           Items="{Binding Source={StaticResource FunctionsProvider}, Path=Engineering}" />
                                    </telerik:RadMenuGroupItem>
                                </telerik:RadMenuItem>

                                <telerik:RadMenuItem Header="Information">
                                    <telerik:RadMenuItem.Icon>
                                        <Image Source="{telerik:IconResource IconRelativePath=16/information.png, IconSources={StaticResource SpreadsheetIconSources}}" Width="16"/>
                                    </telerik:RadMenuItem.Icon>
                                    <telerik:RadMenuGroupItem BorderThickness="0">
                                        <spreadsheetControls:FunctionsMenu Category="Information"
                                                                           Margin="0"
                                                                           DataContext="{Binding}"
                                                                           Items="{Binding Source={StaticResource FunctionsProvider}, Path=Information}" />
                                    </telerik:RadMenuGroupItem>
                                </telerik:RadMenuItem>
                            </telerik:RadContextMenu>
                        </telerik:RadRibbonDropDownButton.DropDownContent>
                    </telerik:RadRibbonDropDownButton>
                </telerik:RadRibbonGroup>

                <telerik:RadRibbonGroup Header="Defined Names"
                                        IsEnabled="{Binding Path=FunctionLibraryGroup.IsEnabled}">

                    <telerik:RadRibbonButton CollapseToSmall="WhenGroupIsSmall"
                                             Command="{Binding Path=ShowNameManagerDialog.Command}"
                                             IsEnabled="{Binding Path=ShowNameManagerDialog.IsEnabled}"
                                             LargeImage="{telerik:IconResource IconRelativePath=32/nameManager.png, IconSources={StaticResource SpreadsheetIconSources}}"
                                             Size="Large"
                                             Text="Name Manager"
                                             telerik:ScreenTip.Title="Name Manager"
                                             telerik:ScreenTip.Description="Create, edit delete and find all the names used in the workbook.&#13;&#13;Names can be used in formulas as substitutes for cell references.&#13;&#13;For example:=SUM(Sales) instead of =SUM(C20:D30)." />

                    <telerik:RadOrderedWrapPanel VerticalAlignment="Top">
                        <telerik:RadRibbonSplitButton Command="{Binding Path=ShowCreateDefinedNameDialog.Command}"
                                                      IsEnabled="{Binding Path=ShowCreateDefinedNameDialog.IsEnabled}"
                                                      Text="Define Name"
                                                      Size="Medium"
                                                      SmallImage="{telerik:IconResource IconRelativePath=16/defineName.png, IconSources={StaticResource SpreadsheetIconSources}}"
                                                      telerik:ScreenTip.Title="Define Name"
                                                      telerik:ScreenTip.Description="Define and apply names.">
                            <telerik:RadRibbonSplitButton.DropDownContent>
                                <telerik:RadContextMenu BorderThickness="0" Padding="0">
                                    <telerik:RadMenuItem Command="{Binding Path=ShowCreateDefinedNameDialog.Command}"
                                                         IsEnabled="{Binding Path=ShowCreateDefinedNameDialog.IsEnabled}"
                                                         Header="Define Name">
                                        <telerik:RadMenuItem.Icon>
                                            <Image Source="{telerik:IconResource IconRelativePath=16/defineName.png, IconSources={StaticResource SpreadsheetIconSources}}" Width="16"/>
                                        </telerik:RadMenuItem.Icon>
                                    </telerik:RadMenuItem>
                                </telerik:RadContextMenu>
                            </telerik:RadRibbonSplitButton.DropDownContent>
                        </telerik:RadRibbonSplitButton>
                    </telerik:RadOrderedWrapPanel>

                </telerik:RadRibbonGroup>

            </telerik:RadRibbonTab>

            <telerik:RadRibbonTab Header="Data">
                <telerik:RadRibbonGroup Header="Sort &amp; Filter"
                                        IsEnabled="{Binding Path=SortAndFilterGroup.IsEnabled}">

                    <telerik:RadOrderedWrapPanel>
                        <telerik:RadRibbonButton Command="{Binding Path=Sort.Command}"
                                                 CommandParameter="Ascending"
                                                 IsEnabled="{Binding Path=Sort.IsEnabled}"
                                                 Size="Medium"
                                                 SmallImage="{telerik:IconResource IconRelativePath=16/sortAscending.png, IconSources={StaticResource SpreadsheetIconSources}}"
                                                 telerik:ScreenTip.Description="Lowest to highest."
                                                 telerik:ScreenTip.Title="Sort A to Z" />

                        <telerik:RadRibbonButton Command="{Binding Path=Sort.Command}"
                                                 CommandParameter="Descending"
                                                 IsEnabled="{Binding Path=Sort.IsEnabled}"
                                                 Size="Medium"
                                                 SmallImage="{telerik:IconResource IconRelativePath=16/sortDescending.png, IconSources={StaticResource SpreadsheetIconSources}}"
                                                 telerik:ScreenTip.Description="Highest to lowest."
                                                 telerik:ScreenTip.Title="Sort Z to A" />
                    </telerik:RadOrderedWrapPanel>

                    <telerik:RadRibbonButton Command="{Binding Path=ShowSortingDialog.Command}"
                                             IsEnabled="{Binding Path=ShowSortingDialog.IsEnabled}"
                                             LargeImage="{telerik:IconResource IconRelativePath=32/sort.png, IconSources={StaticResource SpreadsheetIconSources}}"
                                             Size="Large"
                                             Text="Sort"
                                             telerik:ScreenTip.Title="Sort"
                                             telerik:ScreenTip.Description="Shows the Sort dialog box to sort data based on several criteria at once." />

                    <telerik:Separator />
                    <telerik:RadRibbonToggleButton Command="{Binding Path=SetFilterRange.Command}"
                                                   IsEnabled="{Binding Path=SetFilterRange.IsEnabled}"
                                                   IsChecked="{Binding Path=SetFilterRange.SelectedValue, Mode=TwoWay}"
                                                   Size="Large"
                                                   Text="Filter"
                                                   LargeImage="{telerik:IconResource IconRelativePath=32/filter.png, IconSources={StaticResource SpreadsheetIconSources}}"
                                                   telerik:ScreenTip.Title="Filter"
                                                   telerik:ScreenTip.Description="Turn on filtering for the selected cells. Then, click the arrow in the column header to narrow down the data." />
                    <telerik:RadOrderedWrapPanel>
                        <telerik:RadRibbonButton Command="{Binding Path=ClearFilters.Command}"
                                              IsEnabled="{Binding Path=ClearFilters.IsEnabled}"
                                              Size="Medium"
                                              Text="Clear"
                                              SmallImage="{telerik:IconResource IconRelativePath=16/filterClear.png, IconSources={StaticResource SpreadsheetIconSources}}"
                                              telerik:ScreenTip.Description="Clear"
                                              telerik:ScreenTip.Title="Clear the filter for the current range of data." />
                        <telerik:RadRibbonButton Command="{Binding Path=ReapplyFilters.Command}"
                                              IsEnabled="{Binding Path=ReapplyFilters.IsEnabled}"
                                              Size="Medium"
                                              Text="Reapply"
                                              SmallImage="{telerik:IconResource IconRelativePath=16/filterReapply.png, IconSources={StaticResource SpreadsheetIconSources}}"
                                              telerik:ScreenTip.Description="Reapply"
                                              telerik:ScreenTip.Title="Reapply the filter on the current range so that changes you've made are included." />
                    </telerik:RadOrderedWrapPanel>
                </telerik:RadRibbonGroup>

                <telerik:RadRibbonGroup Header="Data tools"
                                        IsEnabled="{Binding Path=DataToolsGroup.IsEnabled}">

                    <telerik:RadRibbonSplitButton Command="{Binding Path=ShowDataValidationDialog.Command}"
                                                  IsEnabled="{Binding Path=ShowDataValidationDialog.IsEnabled}"
                                                  Size="Large"
                                                  Text="Data Validation"
                                                  LargeImage="{telerik:IconResource IconRelativePath=32/dataValidation.png, IconSources={StaticResource SpreadsheetIconSources}}"
                                                  telerik:ScreenTip.Description="Pick from a list of rules to limit the type of data that can be entered in a cell. &#x0a;&#x0a;For example, you can provide a list of values, like 1, 2, and 3, or only allow numbers greater than 1000 as valid entries"
                                                  telerik:ScreenTip.Title="Data Validation">
                        <telerik:RadRibbonSplitButton.DropDownContent>
                            <telerik:RadContextMenu BorderThickness="0" Padding="0" >
                                <telerik:RadMenuItem Header="Data Validation..." 
                                                         Command="{Binding Path=ShowDataValidationDialog.Command}"
                                                         IsEnabled="{Binding Path=ShowDataValidationDialog.IsEnabled, Mode=TwoWay}">
                                    <telerik:RadMenuItem.Icon>
                                        <Image Source="{telerik:IconResource IconRelativePath=16/dataValidation.png, IconSources={StaticResource SpreadsheetIconSources}}" Width="16"/>
                                    </telerik:RadMenuItem.Icon>
                                </telerik:RadMenuItem>
                                <telerik:RadMenuItem Header="Circle Invalid Data" 
                                                         Command="{Binding Path=CircleInvalidData.Command}"
                                                         IsEnabled="{Binding Path=CircleInvalidData.IsEnabled, Mode=TwoWay}">
                                    <telerik:RadMenuItem.Icon>
                                        <Image Source="{telerik:IconResource IconRelativePath=16/circleInvalidData.png, IconSources={StaticResource SpreadsheetIconSources}}" Width="16"/>
                                    </telerik:RadMenuItem.Icon>
                                </telerik:RadMenuItem>
                                <telerik:RadMenuItem Header="Clear Validation Circles" 
                                                         Command="{Binding Path=ClearValidationCircles.Command}"
                                                         IsEnabled="{Binding Path=ClearValidationCircles.IsEnabled, Mode=TwoWay}">
                                    <telerik:RadMenuItem.Icon>
                                        <Image Source="{telerik:IconResource IconRelativePath=16/clearValidationCircles.png, IconSources={StaticResource SpreadsheetIconSources}}" Width="16"/>
                                    </telerik:RadMenuItem.Icon>
                                </telerik:RadMenuItem>
                            </telerik:RadContextMenu>
                        </telerik:RadRibbonSplitButton.DropDownContent>

                    </telerik:RadRibbonSplitButton>
                </telerik:RadRibbonGroup>
            </telerik:RadRibbonTab>

            <telerik:RadRibbonTab Header="View">
                <telerik:RadRibbonGroup Header="Window"
                                        IsEnabled="{Binding Path=WindowGroup.IsEnabled}"
                                        telerik:ScreenTip.Title="Window">
                    <telerik:RadRibbonDropDownButton Size="Large"
                                                     LargeImage="{telerik:IconResource IconRelativePath=32/freezePanes.png, IconSources={StaticResource SpreadsheetIconSources}}"
                                                     Text="Freeze Panes"
                                                     x:Name="FreezePanesButton"
                                                     telerik:ScreenTip.Description="Keep a portion of the sheet visible while the rest of the sheet scrolls."
                                                     telerik:ScreenTip.Title="Freeze Panes">
                        <telerik:RadRibbonDropDownButton.DropDownContent>
                            <telerik:RadContextMenu BorderThickness="0" Padding="0" 
                                                    IconColumnWidth="55">

                                <telerik:RadMenuItem Command="{Binding Path=FreezePanes.Command}" 
                                                     Visibility="{Binding Path=FreezePanes.IsEnabled, Mode=TwoWay, Converter={StaticResource BoolToVisibilityValueConverter}}">
                                    <telerik:RadMenuItem.Icon>
                                        <Image Source="{telerik:IconResource IconRelativePath=32/freezePanes.png, IconSources={StaticResource SpreadsheetIconSources}}" Width="32" />
                                    </telerik:RadMenuItem.Icon>
                                    <telerik:RadMenuItem.Header>
                                        <StackPanel>
                                            <TextBlock Text="Freeze Panes" 
                                                       FontWeight="Bold"/>
                                            <TextBlock Text="Keep rows and columns visible while the rest of &#13;the worksheet scrolls (based on current selection)."
                                                       VerticalAlignment="Center"/>
                                        </StackPanel>
                                    </telerik:RadMenuItem.Header>
                                </telerik:RadMenuItem>

                                <telerik:RadMenuItem Command="{Binding Path=UnfreezePanes.Command}" 
                                                     Visibility="{Binding Path=UnfreezePanes.IsEnabled, Mode=TwoWay, Converter={StaticResource BoolToVisibilityValueConverter}}">
                                    <telerik:RadMenuItem.Icon>
                                        <Image Source="{telerik:IconResource IconRelativePath=32/freezePanes.png, IconSources={StaticResource SpreadsheetIconSources}}" Width="32" />
                                    </telerik:RadMenuItem.Icon>
                                    <telerik:RadMenuItem.Header>
                                        <StackPanel>
                                            <TextBlock Text="Unfreeze Panes" 
                                                       FontWeight="Bold"/>
                                            <TextBlock Text="Unlock all rows and columns to scroll &#13;through the entire worksheet."
                                                       VerticalAlignment="Center"/>
                                        </StackPanel>
                                    </telerik:RadMenuItem.Header>
                                </telerik:RadMenuItem>

                                <telerik:RadMenuItem Command="{Binding Path=FreezeTopRow.Command}" 
                                                     IsEnabled="{Binding Path=FreezeTopRow.IsEnabled, Mode=TwoWay}">
                                    <telerik:RadMenuItem.Icon>
                                        <Image Source="{telerik:IconResource IconRelativePath=32/freezeTopRow.png, IconSources={StaticResource SpreadsheetIconSources}}" Width="32" />
                                    </telerik:RadMenuItem.Icon>
                                    <telerik:RadMenuItem.Header>
                                        <StackPanel>
                                            <TextBlock Text="Freeze Top Row" 
                                                       FontWeight="Bold"/>
                                            <TextBlock Text="Keep the top row visible while scrolling &#13;through the rest of the worksheet."
                                                       VerticalAlignment="Center"/>
                                        </StackPanel>
                                    </telerik:RadMenuItem.Header>
                                </telerik:RadMenuItem>

                                <telerik:RadMenuItem Command="{Binding Path=FreezeFirstColumn.Command}" 
                                                     IsEnabled="{Binding Path=FreezeFirstColumn.IsEnabled, Mode=TwoWay}"
                                                     telerik:ScreenTip.Description="">
                                    <telerik:RadMenuItem.Icon>
                                        <Image Source="{telerik:IconResource IconRelativePath=32/freezeFirstColumn.png, IconSources={StaticResource SpreadsheetIconSources}}" Width="32" />
                                    </telerik:RadMenuItem.Icon>
                                    <telerik:RadMenuItem.Header>
                                        <StackPanel>
                                            <TextBlock Text="Freeze First Column" 
                                                       FontWeight="Bold"/>
                                            <TextBlock Text="Keep the first column visible while scrolling &#13;through the rest of the worksheet."
                                                       VerticalAlignment="Center"/>
                                        </StackPanel>
                                    </telerik:RadMenuItem.Header>
                                </telerik:RadMenuItem>

                            </telerik:RadContextMenu>
                        </telerik:RadRibbonDropDownButton.DropDownContent>
                    </telerik:RadRibbonDropDownButton>
                </telerik:RadRibbonGroup>
            </telerik:RadRibbonTab>

            <telerik:RadRibbonTab Header="Review">
                <telerik:RadRibbonGroup Header="Changes">
                    <spreadsheetControls:ProtectionButton DataContext="{Binding Path=CommandDescriptors, ElementName=radSpreadsheet}"
                                                          CustomCommand="{Binding Path=ToggleSheetProtection.Command}"
                                                          SelectedValue="{Binding Path=ToggleSheetProtection.SelectedValue}"
                                                          IsCommandEnabled="{Binding Path=ToggleSheetProtection.IsEnabled}"
                                                          Image="{telerik:IconResource IconRelativePath=32/protectWorksheet.png, IconSources={StaticResource SpreadsheetIconSources}}"
                                                          telerik:ScreenTip.Title="Protect Sheet"
                                                          telerik:ScreenTip.Description="Prevent unwanted changes from others by limiting their ability to edit."/>

                    <spreadsheetControls:ProtectionButton DataContext="{Binding Path=CommandDescriptors, ElementName=radSpreadsheet}"
                                                          CustomCommand="{Binding Path=ToggleWorkbookProtection.Command}"
                                                          SelectedValue="{Binding Path=ToggleWorkbookProtection.SelectedValue}"
                                                          IsCommandEnabled="{Binding Path=ToggleWorkbookProtection.IsEnabled}"
                                                          Image="{telerik:IconResource IconRelativePath=32/protectWorkbook.png, IconSources={StaticResource SpreadsheetIconSources}}"
                                                          telerik:ScreenTip.Title="Protect Workbook"
                                                          telerik:ScreenTip.Description="Keep others from making structural changes to your workbook, such as moving, deleting or adding sheets."/>

                </telerik:RadRibbonGroup>
            </telerik:RadRibbonTab>

            <telerik:RadRibbonTab ContextualGroupName="PictureTools" Header="Format">
                <telerik:RadRibbonGroup Header="Arrange">
                    <telerik:RadCollapsiblePanel>
                        <telerik:RadRibbonSplitButton x:Name="BringForwardButton"
                                                      Command="{Binding Path=BringForward.Command}"
                                                      Size="Medium"
                                                      IsEnabled="{Binding Path=BringForward.IsEnabled, Mode=TwoWay}"
                                                      Text="Bring Forward"
                                                      SmallImage="{telerik:IconResource IconRelativePath=16/bringForward.png, IconSources={StaticResource SpreadsheetIconSources}}"
                                                      telerik:ScreenTip.Description="Bring the selected object forward one level so that it's hidden behind fewer objects."
                                                      telerik:ScreenTip.Title="Bring Forward">

                            <telerik:RadRibbonSplitButton.DropDownContent>
                                <telerik:RadContextMenu BorderThickness="0" Padding="0">
                                    <telerik:RadMenuItem Command="{Binding Path=BringForward.Command}"
                                                         Header="Bring Forward"
                                                         IsEnabled="{Binding Path=BringForward.IsEnabled, Mode=TwoWay}"
                                                         telerik:ScreenTip.Description="Bring the selected object forward one level so that it's hidden behind fewer objects."
                                                         telerik:ScreenTip.Title="Bring Forward">
                                        <telerik:RadMenuItem.Icon>
                                            <Image Source="{telerik:IconResource IconRelativePath=16/bringForward.png, IconSources={StaticResource SpreadsheetIconSources}}" Width="16" Stretch="None" />
                                        </telerik:RadMenuItem.Icon>
                                    </telerik:RadMenuItem>
                                    <telerik:RadMenuItem Command="{Binding Path=BringToFront.Command}"
                                                         Header="Bring to Front"
                                                         IsEnabled="{Binding Path=BringToFront.IsEnabled, Mode=TwoWay}"
                                                         telerik:ScreenTip.Description="Bring the selected object in front of all other objects."
                                                         telerik:ScreenTip.Title="Bring to front">
                                        <telerik:RadMenuItem.Icon>
                                            <Image Source="{telerik:IconResource IconRelativePath=16/bringToFront.png, IconSources={StaticResource SpreadsheetIconSources}}" Width="16" Stretch="None" />
                                        </telerik:RadMenuItem.Icon>
                                    </telerik:RadMenuItem>
                                </telerik:RadContextMenu>
                            </telerik:RadRibbonSplitButton.DropDownContent>
                        </telerik:RadRibbonSplitButton>

                        <telerik:RadRibbonSplitButton x:Name="SendBackwardButton"
                                                      Command="{Binding Path=SendBackward.Command}"
                                                      Size="Medium"
                                                      IsEnabled="{Binding Path=SendBackward.IsEnabled, Mode=TwoWay}"
                                                      SmallImage="{telerik:IconResource IconRelativePath=16/sendBackwards.png, IconSources={StaticResource SpreadsheetIconSources}}"
                                                      Text="Send Backward"
                                                      telerik:ScreenTip.Description="Send the selected object back one level so that it's hidden behind more objects."
                                                      telerik:ScreenTip.Title="Send Backward">

                            <telerik:RadRibbonSplitButton.DropDownContent>
                                <telerik:RadContextMenu BorderThickness="0" Padding="0">
                                    <telerik:RadMenuItem Command="{Binding Path=SendBackward.Command}"
                                                         Header="Send Backward"
                                                         IsEnabled="{Binding Path=SendBackward.IsEnabled, Mode=TwoWay}"
                                                         telerik:ScreenTip.Description="Send the selected object back one level so that it's hidden behind more objects."
                                                         telerik:ScreenTip.Title="Send Backward">
                                        <telerik:RadMenuItem.Icon>
                                            <Image Source="{telerik:IconResource IconRelativePath=16/sendBackwards.png, IconSources={StaticResource SpreadsheetIconSources}}" Width="16" Stretch="None" />
                                        </telerik:RadMenuItem.Icon>
                                    </telerik:RadMenuItem>
                                    <telerik:RadMenuItem Command="{Binding Path=SendToBack.Command}"
                                                         Header="Send to Back"
                                                         IsEnabled="{Binding Path=SendToBack.IsEnabled, Mode=TwoWay}"
                                                         telerik:ScreenTip.Description="Send the selected object behind all other objects."
                                                         telerik:ScreenTip.Title="Send to Back">
                                        <telerik:RadMenuItem.Icon>
                                            <Image Source="{telerik:IconResource IconRelativePath=16/sendToBack.png, IconSources={StaticResource SpreadsheetIconSources}}" Width="16" Stretch="None" />
                                        </telerik:RadMenuItem.Icon>
                                    </telerik:RadMenuItem>
                                </telerik:RadContextMenu>
                            </telerik:RadRibbonSplitButton.DropDownContent>
                        </telerik:RadRibbonSplitButton>

                        <telerik:RadRibbonDropDownButton x:Name="RotateButton"
                                                         Size="Medium"
                                                         Text="Rotate"
                                                         SmallImage="{telerik:IconResource IconRelativePath=16/rotateRight90.png, IconSources={StaticResource SpreadsheetIconSources}}"
                                                         telerik:ScreenTip.Description="Rotate or flip the selected object."
                                                         telerik:ScreenTip.Title="Rotate Objects">

                            <telerik:RadRibbonDropDownButton.DropDownContent>
                                <telerik:RadContextMenu BorderThickness="0" Padding="0">
                                    <telerik:RadMenuItem Command="{Binding Path=RotateNinetyDegreesRight.Command}"
                                                         Header="Rotate Right 90&#176;"
                                                         IsEnabled="{Binding Path=RotateNinetyDegreesRight.IsEnabled, Mode=TwoWay}">
                                        <telerik:RadMenuItem.Icon>
                                            <Image Source="{telerik:IconResource IconRelativePath=16/rotateRight90.png, IconSources={StaticResource SpreadsheetIconSources}}" Width="16" Stretch="None" />
                                        </telerik:RadMenuItem.Icon>
                                    </telerik:RadMenuItem>
                                    <telerik:RadMenuItem Command="{Binding Path=RotateNinetyDegreesLeft.Command}"
                                                         Header="Rotate Left 90&#176;"
                                                         IsEnabled="{Binding Path=RotateNinetyDegreesLeft.IsEnabled, Mode=TwoWay}">
                                        <telerik:RadMenuItem.Icon>
                                            <Image Source="{telerik:IconResource IconRelativePath=16/rotateLeft90.png, IconSources={StaticResource SpreadsheetIconSources}}" Width="16" Stretch="None" />
                                        </telerik:RadMenuItem.Icon>
                                    </telerik:RadMenuItem>
                                    <telerik:RadMenuItem Command="{Binding Path=FlipVertical.Command}"
                                                         Header="Flip Vertical"
                                                         IsEnabled="{Binding Path=FlipVertical.IsEnabled, Mode=TwoWay}">
                                        <telerik:RadMenuItem.Icon>
                                            <Image Source="{telerik:IconResource IconRelativePath=16/flipVertical.png, IconSources={StaticResource SpreadsheetIconSources}}" Width="16" Stretch="None" />
                                        </telerik:RadMenuItem.Icon>
                                    </telerik:RadMenuItem>
                                    <telerik:RadMenuItem Command="{Binding Path=FlipHorizontal.Command}"
                                                         Header="Flip Horizontal"
                                                         IsEnabled="{Binding Path=FlipHorizontal.IsEnabled, Mode=TwoWay}">
                                        <telerik:RadMenuItem.Icon>
                                            <Image Source="{telerik:IconResource IconRelativePath=16/flipHorizontal.png, IconSources={StaticResource SpreadsheetIconSources}}" Width="16" Stretch="None" />
                                        </telerik:RadMenuItem.Icon>
                                    </telerik:RadMenuItem>
                                </telerik:RadContextMenu>
                            </telerik:RadRibbonDropDownButton.DropDownContent>
                        </telerik:RadRibbonDropDownButton>

                    </telerik:RadCollapsiblePanel>
                </telerik:RadRibbonGroup>

                <telerik:RadRibbonGroup Header="Size"
                                        DialogLauncherVisibility="{Binding Path=ShowFormatShapesDialog.IsEnabled, Converter={StaticResource BoolToVisibilityValueConverter}}"
                                        DialogLauncherCommand="{Binding Path=ShowFormatShapesDialog.Command}"
                                        telerik:ScreenTip.Title="Format Shapes"
                                        telerik:ScreenTip.Description="Show the Format Shapes dialog box in which you can specify the size and positioning fo the object.">
                    <telerik:RadCollapsiblePanel>
                        <Grid>
                            <Grid.RowDefinitions>
                                <RowDefinition Height="Auto" />
                                <RowDefinition Height="Auto" />
                            </Grid.RowDefinitions>
                            <Grid.ColumnDefinitions>
                                <ColumnDefinition />
                                <ColumnDefinition />
                                <ColumnDefinition />
                            </Grid.ColumnDefinitions>

                            <Image Source="{telerik:IconResource IconRelativePath=16/width.png, IconSources={StaticResource SpreadsheetIconSources}}" 
                                   Stretch="None" UseLayoutRounding="True" VerticalAlignment="Center"
                                   telerik:ScreenTip.Title="Shape Width"
                                   telerik:ScreenTip.Description="Change the width of the shape or picture."/>
                            <TextBlock Grid.Column="1" VerticalAlignment="Center" Text="Width:" Margin="4 0"
                                       telerik:ScreenTip.Title="Shape Width"
                                       telerik:ScreenTip.Description="Change the width of the shape or picture."/>
                            <telerik:RadNumericUpDown MaxWidth="150"
                                                      Grid.Column="2"
                                                      VerticalAlignment="Center"
                                                      Value="{Binding Path=SetShapeWidth.SelectedValue, Mode=TwoWay}"
                                                      Minimum="0.1"
                                                      Maximum="2348"
                                                      SmallChange="0.1"
								                      spreadsheetControls:RadNumericUpDownExtensions.UIInteractionCommand="{Binding Path=SetShapeWidth.Command}"
                                                      spreadsheetControls:RadNumericUpDownExtensions.UIInteractionCommandParameter="{Binding RelativeSource={RelativeSource Self}, Path=Value}"
                                                      telerik:ScreenTip.Title="Shape Width"
                                                      telerik:ScreenTip.Description="Change the width of the shape or picture."/>

                            <Image Grid.Row="1" Source="{telerik:IconResource IconRelativePath=16/height.png, IconSources={StaticResource SpreadsheetIconSources}}"
                                   Stretch="None" Margin="0 2 0 0" UseLayoutRounding="True" VerticalAlignment="Center"
                                   telerik:ScreenTip.Title="Shape Height"
                                   telerik:ScreenTip.Description="Change the height of the shape or picture."/>
                            <TextBlock Grid.Row="1" Grid.Column="1" Text="Height:" Margin="4 2 4 0" VerticalAlignment="Center"
                                       telerik:ScreenTip.Title="Shape Height"
                                       telerik:ScreenTip.Description="Change the height of the shape or picture."/>
                            <telerik:RadNumericUpDown MaxWidth="150"
                                                      Grid.Column="2"
                                                      Margin="0 2 0 0" 
                                                      VerticalAlignment="Center"
                                                      Grid.Row="1"
                                                      Value="{Binding Path=SetShapeHeight.SelectedValue, Mode=TwoWay}"
                                                      Minimum="0.1"
                                                      Maximum="2348"
                                                      SmallChange="0.1"
								                      spreadsheetControls:RadNumericUpDownExtensions.UIInteractionCommand="{Binding Path=SetShapeHeight.Command}"
                                                      spreadsheetControls:RadNumericUpDownExtensions.UIInteractionCommandParameter="{Binding RelativeSource={RelativeSource Self}, Path=Value}"
                                                      telerik:ScreenTip.Title="Shape Height"
                                                      telerik:ScreenTip.Description="Change the height of the shape or picture."/>
                        </Grid>

                    </telerik:RadCollapsiblePanel >
                </telerik:RadRibbonGroup>

            </telerik:RadRibbonTab>

            <telerik:RadRibbonView.ContextualGroups>
                <telerik:RadRibbonContextualGroup x:Name="PictureTools" Header="Picture Tools" IsActive="{Binding Path=PictureToolsTab.IsEnabled, Mode=OneWay}" />
            </telerik:RadRibbonView.ContextualGroups>

        </telerik:RadRibbonView>
        <!--  RibbonView End  -->

        <!--  FormulaBar  -->
        <spreadsheetControls:RadSpreadsheetFormulaBar Grid.Row="1" Background="{appearance:Office2016Resource Resource=DocumentBackground}" RadSpreadsheet="{Binding ElementName=radSpreadsheet, Mode=OneTime}" />

        <!--  RadSpreadsheet  -->
        <telerik:RadSpreadsheet x:Name="radSpreadsheet"
                                Grid.Row="2" DataContext="{Binding Path=CommandDescriptors, ElementName=radSpreadsheet}" >
            <telerik:RadSpreadsheet.WorksheetEditorContextMenu>
                <telerik:RadContextMenu>
                    <telerik:RadMenuItem Header="Cut"
                                         Command="{Binding Path=Cut.Command}"
                                         Visibility="{Binding Path=Cut.IsEnabled, Mode=TwoWay, Converter={StaticResource BoolToVisibilityValueConverter}}">
                        <telerik:RadMenuItem.Icon>
                            <Image Source="{telerik:IconResource IconRelativePath=16/cut.png, IconSources={StaticResource SpreadsheetIconSources}}" Width="16"/>
                        </telerik:RadMenuItem.Icon>
                    </telerik:RadMenuItem>

                    <telerik:RadMenuItem Header="Copy"
                                         Command="{Binding Path=Copy.Command}"
                                         Visibility="{Binding Path=Copy.IsEnabled, Mode=TwoWay, Converter={StaticResource BoolToVisibilityValueConverter}}">
                        <telerik:RadMenuItem.Icon>
                            <Image Source="{telerik:IconResource IconRelativePath=16/copy.png, IconSources={StaticResource SpreadsheetIconSources}}" Width="16"/>
                        </telerik:RadMenuItem.Icon>
                    </telerik:RadMenuItem>

                    <telerik:RadMenuItem Header="Paste"
                                         Command="{Binding Path=Paste.Command}"
                                         Visibility="{Binding Path=Paste.IsEnabled, Mode=TwoWay, Converter={StaticResource BoolToVisibilityValueConverter}}">
                        <telerik:RadMenuItem.Icon>
                            <Image Source="{telerik:IconResource IconRelativePath=16/pasteNormal.png, IconSources={StaticResource SpreadsheetIconSources}}" Width="16"/>
                        </telerik:RadMenuItem.Icon>
                    </telerik:RadMenuItem>

                    <telerik:RadMenuSeparatorItem />

                    <telerik:RadMenuItem Header="Insert..."
                                         Command="{Binding Path=InsertCells.Command}" 
                                         Visibility="{Binding Path=InsertCells.IsEnabled, Mode=TwoWay, Converter={StaticResource BoolToVisibilityValueConverter}}" />

                    <telerik:RadMenuItem Header="Delete..."
                                         Command="{Binding Path=RemoveCells.Command}"
                                         Visibility="{Binding Path=RemoveCells.IsEnabled, Mode=TwoWay, Converter={StaticResource BoolToVisibilityValueConverter}}"/>

                    <telerik:RadMenuItem Header="Insert Rows"
                                         Command="{Binding Path=ContextMenuInsertRows.Command}"
                                         Visibility="{Binding Path=ContextMenuInsertRows.IsEnabled, Mode=TwoWay, Converter={StaticResource BoolToVisibilityValueConverter}}"/>

                    <telerik:RadMenuItem Header="Delete Rows"
                                         Command="{Binding Path=ContextMenuRemoveRows.Command}"
                                         Visibility="{Binding Path=ContextMenuRemoveRows.IsEnabled, Mode=TwoWay, Converter={StaticResource BoolToVisibilityValueConverter}}"/>

                    <telerik:RadMenuItem Header="Insert Columns"
                                         Command="{Binding Path=ContextMenuInsertColumns.Command}"
                                         Visibility="{Binding Path=ContextMenuInsertColumns.IsEnabled, Mode=TwoWay, Converter={StaticResource BoolToVisibilityValueConverter}}"/>

                    <telerik:RadMenuItem Header="Delete Columns"
                                         Command="{Binding Path=ContextMenuRemoveColumns.Command}"
                                         Visibility="{Binding Path=ContextMenuRemoveColumns.IsEnabled, Mode=TwoWay, Converter={StaticResource BoolToVisibilityValueConverter}}"/>

                    <telerik:RadMenuItem Header="Clear Contents" 
                                         Command="{Binding Path=Clear.Command}"
                                         CommandParameter="Contents"
                                         Visibility="{Binding Path=Clear.IsEnabled, Mode=TwoWay, Converter={StaticResource BoolToVisibilityValueConverter}}"/>

                    <telerik:RadMenuSeparatorItem Visibility="{Binding Path=ShowFormatCellsDialog.IsEnabled, Mode=TwoWay, Converter={StaticResource BoolToVisibilityValueConverter}}"/>

                    <telerik:RadMenuItem Command="{Binding Path=ShowFormatCellsDialog.Command}"
                                         Header="Format Cells..."
                                         Visibility="{Binding Path=ShowFormatCellsDialog.IsEnabled, Mode=TwoWay, Converter={StaticResource BoolToVisibilityValueConverter}}">

                        <telerik:RadMenuItem.Icon>
                            <Image Source="{telerik:IconResource IconRelativePath=16/formatCells.png, IconSources={StaticResource SpreadsheetIconSources}}" Width="16"/>
                        </telerik:RadMenuItem.Icon>
                    </telerik:RadMenuItem>

                    <telerik:RadMenuItem Header="Hide"
                                         Command="{Binding Path=ContextMenuHideColumns.Command}"
                                         Visibility="{Binding Path=ContextMenuHideColumns.IsEnabled, Mode=TwoWay, Converter={StaticResource BoolToVisibilityValueConverter}}"/>

                    <telerik:RadMenuItem Header="Unhide"
                                         Command="{Binding Path=ContextMenuUnhideColumns.Command}"
                                         Visibility="{Binding Path=ContextMenuUnhideColumns.IsEnabled, Mode=TwoWay, Converter={StaticResource BoolToVisibilityValueConverter}}"/>

                    <telerik:RadMenuItem Header="Hide"
                                         Command="{Binding Path=ContextMenuHideRows.Command}"
                                         Visibility="{Binding Path=ContextMenuHideRows.IsEnabled, Mode=TwoWay, Converter={StaticResource BoolToVisibilityValueConverter}}"/>

                    <telerik:RadMenuItem Header="Unhide"
                                         Command="{Binding Path=ContextMenuUnhideRows.Command}"
                                         Visibility="{Binding Path=ContextMenuUnhideRows.IsEnabled, Mode=TwoWay, Converter={StaticResource BoolToVisibilityValueConverter}}"/>

                    <telerik:RadMenuItem Command="{Binding Path=ShowHyperlinkDialog.Command}"
                                         Header="Hyperlink..."
                                         Visibility="{Binding Path=ShowHyperlinkDialog.IsEnabled, Mode=TwoWay, Converter={StaticResource BoolToVisibilityValueConverter}}">
                        <telerik:RadMenuItem.Icon>
                            <Image Source="{telerik:IconResource IconRelativePath=16/insertHyperlink.png, IconSources={StaticResource SpreadsheetIconSources}}" Width="16"/>
                        </telerik:RadMenuItem.Icon>
                    </telerik:RadMenuItem>

                    <telerik:RadMenuItem Command="{Binding Path=RemoveHyperlink.Command}"
                                         Header="Remove Hyperlink"
                                         Visibility="{Binding Path=RemoveHyperlink.IsEnabled, Mode=TwoWay, Converter={StaticResource BoolToVisibilityValueConverter}}">
                        <telerik:RadMenuItem.Icon>
                            <Image Source="{telerik:IconResource IconRelativePath=16/removeHyperlink.png, IconSources={StaticResource SpreadsheetIconSources}}" Width="16"/>
                        </telerik:RadMenuItem.Icon>
                    </telerik:RadMenuItem>

                    <telerik:RadMenuItem Command="{Binding Path=BringForward.Command}"
                                         Header="Bring Forward"
                                         Visibility="{Binding Path=BringForward.IsEnabled, Mode=TwoWay, Converter={StaticResource BoolToVisibilityValueConverter}}">
                        <telerik:RadMenuItem.Icon>
                            <Image Source="{telerik:IconResource IconRelativePath=16/bringForward.png, IconSources={StaticResource SpreadsheetIconSources}}" Width="16" Stretch="None" />
                        </telerik:RadMenuItem.Icon>
                    </telerik:RadMenuItem>

                    <telerik:RadMenuItem Command="{Binding Path=BringToFront.Command}"
                                         Header="Bring To Front"
                                         Visibility="{Binding Path=BringToFront.IsEnabled, Mode=TwoWay, Converter={StaticResource BoolToVisibilityValueConverter}}">
                        <telerik:RadMenuItem.Icon>
                            <Image Source="{telerik:IconResource IconRelativePath=16/bringToFront.png, IconSources={StaticResource SpreadsheetIconSources}}" Width="16" Stretch="None" />
                        </telerik:RadMenuItem.Icon>
                    </telerik:RadMenuItem>

                    <telerik:RadMenuItem Command="{Binding Path=SendBackward.Command}"
                                         Header="Send Backward"
                                         Visibility="{Binding Path=SendBackward.IsEnabled, Mode=TwoWay, Converter={StaticResource BoolToVisibilityValueConverter}}">
                        <telerik:RadMenuItem.Icon>
                            <Image Source="{telerik:IconResource IconRelativePath=16/sendBackwards.png, IconSources={StaticResource SpreadsheetIconSources}}" Width="16" Stretch="None" />
                        </telerik:RadMenuItem.Icon>
                    </telerik:RadMenuItem>

                    <telerik:RadMenuItem Command="{Binding Path=SendToBack.Command}"
                                         Header="Send To Back"
                                         Visibility="{Binding Path=SendToBack.IsEnabled, Mode=TwoWay, Converter={StaticResource BoolToVisibilityValueConverter}}">
                        <telerik:RadMenuItem.Icon>
                            <Image Source="{telerik:IconResource IconRelativePath=16/sendToBack.png, IconSources={StaticResource SpreadsheetIconSources}}" Width="16" Stretch="None" />
                        </telerik:RadMenuItem.Icon>
                    </telerik:RadMenuItem>

                    <telerik:RadMenuItem Command="{Binding Path=ShowFormatShapesDialog.Command}"
                                         Header="Format Picture..."
                                         Visibility="{Binding Path=ShowFormatShapesDialog.IsEnabled, Mode=TwoWay, Converter={StaticResource BoolToVisibilityValueConverter}}">
                        <telerik:RadMenuItem.Icon>
                            <Image Source="{telerik:IconResource IconRelativePath=16/formatShapes.png, IconSources={StaticResource SpreadsheetIconSources}}" Width="16" Stretch="None" />
                        </telerik:RadMenuItem.Icon>
                    </telerik:RadMenuItem>

                </telerik:RadContextMenu>
            </telerik:RadSpreadsheet.WorksheetEditorContextMenu>
        </telerik:RadSpreadsheet>

        <!--  RadSpreadsheetStatusBar  -->
        <spreadsheetControls:RadSpreadsheetStatusBar Grid.Row="3" RadSpreadsheet="{Binding ElementName=radSpreadsheet, Mode=OneTime}" Height="22" Background="{appearance:Office2016Resource Resource=StatusBarBackground}"/>

    </Grid>
</UserControl>
