Mini Kabibi Habibi

Current Path : C:/Users/Public/Documents/DXperience 13.1 Demos/Silverlight/CS/GridDemo/Modules/
Upload File :
Current File : C:/Users/Public/Documents/DXperience 13.1 Demos/Silverlight/CS/GridDemo/Modules/ContextMenu.SL.xaml

<dxdemo:GridDemoModule x:Class="GridDemo.ContextMenu" x:Name="ContextMenuModule" mc:Ignorable="d" d:DesignHeight="400" d:DesignWidth="800" xmlns:local="clr-namespace:GridDemo" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:dxdemo="clr-namespace:GridDemo" xmlns:dx="http://schemas.devexpress.com/winfx/2008/xaml/core" xmlns:dxg="http://schemas.devexpress.com/winfx/2008/xaml/grid" xmlns:dxe="http://schemas.devexpress.com/winfx/2008/xaml/editors" xmlns:dxb="http://schemas.devexpress.com/winfx/2008/xaml/bars" xmlns:dxdb="http://schemas.devexpress.com/winfx/2008/xaml/demobase" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:d="http://schemas.microsoft.com/expression/blend/2008">
    <dxdemo:GridDemoModule.Resources>
        <ResourceDictionary>
            <dxdb:NWindDataLoader x:Key="NWindDataLoader" />
            <dx:DefaultBooleanToNullableBooleanConverter x:Key="DefaultBooleanToNullableBooleanConverter" />
        </ResourceDictionary>
    </dxdemo:GridDemoModule.Resources>
    <dxdb:DemoModuleControl>
        <dxdb:DemoModuleControl.OptionsTopText>
            Right-click a column header, grid row, group or summary panel and explore available menu items.
        </dxdb:DemoModuleControl.OptionsTopText>
        <dxdb:DemoModuleControl.OptionsContent>
            <StackPanel>
                <dx:GroupFrame Header="Column Menu" Margin="0,0,0,12">
                    <StackPanel Orientation="Vertical">
                        <dxe:CheckEdit Margin="0,0,0,4" IsChecked="{Binding Path=View.IsColumnMenuEnabled, Mode=TwoWay}" Content="Enabled" />
                        <dxe:CheckEdit Name="columnMenuRemoveItemCheck" Margin="0,0,0,4" Content="Remove 'Group Box' item" />
                        <dxe:CheckEdit Name="columnMenuAddItemCheck" Margin="0,0,0,0" Content="Add 'Allow Sorting/Grouping' items" />
                    </StackPanel>
                </dx:GroupFrame>
                <dx:GroupFrame Header="GroupPanel Menu" Margin="0,0,0,12">
                    <StackPanel Orientation="Vertical">
                        <dxe:CheckEdit Margin="0,0,0,4" IsChecked="{Binding Path=View.IsGroupPanelMenuEnabled, Mode=TwoWay}" Content="Enabled" />
                        <dxe:CheckEdit Name="groupPanelMenuRemoveItemCheck" Margin="0,0,0,4" Content="Remove 'Clear Grouping' item" />
                        <dxe:CheckEdit Name="groupPanelMenuAddItemCheck" Margin="0,0,0,0" Content="Add 'Allow Sorting/Grouping' items" />
                    </StackPanel>
                </dx:GroupFrame>
                <dx:GroupFrame Header="Cell Menu" Margin="0,0,0,12">
                    <StackPanel Orientation="Vertical">
                        <dxe:CheckEdit Margin="0,0,0,0" IsChecked="{Binding Path=View.IsRowCellMenuEnabled, Mode=TwoWay}" Content="Enabled" />
                    </StackPanel>
                </dx:GroupFrame>
                <dx:GroupFrame Header="Footer Menu" Margin="0,0,0,12">
                    <StackPanel Orientation="Vertical">
                        <dxe:CheckEdit Margin="0,0,0,4" IsChecked="{Binding Path=View.IsTotalSummaryMenuEnabled, Mode=TwoWay}" Content="Enabled" />
                        <dxe:CheckEdit Name="totalMenuRemoveItemCheck" Margin="0,0,0,0" Content="Remove 'Customize' item" />
                    </StackPanel>
                </dx:GroupFrame>
            </StackPanel>
            </dxdb:DemoModuleControl.OptionsContent>
        <dxb:BarManager Name="barManager">
            <dxb:BarManager.Items>

                <dxb:BarButtonItem Name="deleteRowItem" Content="Delete" Command="{Binding ElementName=ContextMenuModule, Path=DeleteRow}" CommandParameter="{Binding ElementName=ContextMenuModule, Path=CellMenuInfo.Row.RowHandle.Value}" />
            </dxb:BarManager.Items>
            <dxg:GridControl Grid.Row="1" Name="grid" Grid.Column="0" ItemsSource="{Binding Path=InvoicesNew, Source={StaticResource NWindDataLoader}}" CustomSummary="grid_CustomSummary" CustomSummaryExists="grid_CustomSummaryExists">
                <dxg:GridControl.Columns>
                    <dxg:GridColumn Name="colCountry" FieldName="Country" MinWidth="30" Width="30" />
                    <dxg:GridColumn FieldName="City" MinWidth="30" Width="30" />
                    <dxg:GridColumn Name="colUnitPrice" FieldName="UnitPrice" MinWidth="150" Width="150">
                        <dxg:GridColumn.EditSettings>
                            <dxe:TextEditSettings MaskType="Numeric" MaskUseAsDisplayFormat="True" Mask="c" MaskCulture="en-US" />
                        </dxg:GridColumn.EditSettings>
                    </dxg:GridColumn>
                    <dxg:GridColumn FieldName="Discount" MinWidth="150" Width="150">
                        <dxg:GridColumn.EditSettings>
                            <dxe:TextEditSettings DisplayFormat="0%" MaskType="Numeric" />
                        </dxg:GridColumn.EditSettings>
                    </dxg:GridColumn>
                </dxg:GridControl.Columns>
                <dxg:GridControl.TotalSummary>
                    <dxg:GridSummaryItem FieldName="UnitPrice" SummaryType="Count" ShowInColumn="UnitPrice" />
                    <dxg:GridSummaryItem FieldName="Discount" SummaryType="Max" ShowInColumn="Discount" />
                    <dxg:GridSummaryItem FieldName="UnitPrice" SummaryType="Custom" ShowInColumn="UnitPrice" DisplayFormat="Median={0:0}" Tag="customItem" />
                </dxg:GridControl.TotalSummary>
                <dxg:GridControl.GroupSummary>
                    <dxg:GridSummaryItem FieldName="UnitPrice" SummaryType="Sum" DisplayFormat="Sum of Unit Price is ${0:N}" />
                </dxg:GridControl.GroupSummary>
                <dxg:GridControl.View>
                    <dxg:TableView Name="view" ShowGroupedColumns="True" NavigationStyle="Row" ShowTotalSummary="True" AutoWidth="True" ShowGridMenu="TableView_ShowGridMenu">
                        <dxg:TableView.ColumnMenuCustomizations>
                            <dxb:BarItemLinkSeparator />
                            <dxb:BarCheckItem Name="allowSortingItem" Content="Allow Sorting" IsChecked="{Binding Path=(dxg:GridPopupMenu.GridMenuInfo).Column.AllowSorting, Mode=TwoWay, Converter={StaticResource DefaultBooleanToNullableBooleanConverter}, RelativeSource={RelativeSource Self}}" IsThreeState="true" />
                            <dxb:BarCheckItem Name="allowGroupingItem" Content="Allow Grouping" IsChecked="{Binding Path=(dxg:GridPopupMenu.GridMenuInfo).Column.AllowGrouping, Mode=TwoWay, Converter={StaticResource DefaultBooleanToNullableBooleanConverter}, RelativeSource={RelativeSource Self}}" IsThreeState="true" />
                        </dxg:TableView.ColumnMenuCustomizations>
                        <dxg:TableView.GroupPanelMenuCustomizations>
                            <dxb:BarItemLinkSeparator />
                            <dxb:BarCheckItem Name="allowAllSortingItem" Content="Allow Sorting" IsChecked="{Binding Path=(dxg:GridPopupMenu.GridMenuInfo).View.AllowSorting, Mode=TwoWay, RelativeSource={RelativeSource Self}}" />
                            <dxb:BarCheckItem Name="allowAllGroupingItem" Content="Allow Grouping" IsChecked="{Binding Path=(dxg:GridPopupMenu.GridMenuInfo).View.AllowGrouping, Mode=TwoWay, RelativeSource={RelativeSource Self}}" />
                        </dxg:TableView.GroupPanelMenuCustomizations>
                        <dxg:TableView.RowCellMenuCustomizations>
                            <dxb:BarButtonItemLink BarItemName="deleteRowItem" />

                        </dxg:TableView.RowCellMenuCustomizations>
                        <dxg:TableView.TotalSummaryMenuCustomizations>
                            <dxb:BarCheckItem Name="customSummaryMenuItem" dxb:BarItemLinkActionBase.ItemLinkIndex="5" Content="Median" IsChecked="true" CloseSubMenuOnClick="False" CheckedChanged="customSummaryMenuItem_CheckedChanged" />
                        </dxg:TableView.TotalSummaryMenuCustomizations>
                    </dxg:TableView>
                </dxg:GridControl.View>
            </dxg:GridControl>
        </dxb:BarManager>
    </dxdb:DemoModuleControl>
</dxdemo:GridDemoModule>