예제 #1
0
        private void SetGridTransactionsTableSummaries()
        {
            GridTableSummaryRow sum = new GridTableSummaryRow
            {
                ShowSummaryInRow = false,
                TitleColumnCount = 1,
                Position         = VerticalPosition.Bottom,
                Title            = "Totais"
            };

            GridSummaryColumn cre = new GridSummaryColumn
            {
                Name        = "CreditAmmount",
                Format      = "{Sum:c}",
                MappingName = "CreditAmount",
                SummaryType = SummaryType.DoubleAggregate
            };

            GridSummaryColumn deb = new GridSummaryColumn
            {
                Name        = "DebitAmmount",
                Format      = "{Sum:c}",
                MappingName = "DebitAmount",
                SummaryType = SummaryType.DoubleAggregate
            };

            sum.SummaryColumns.Add(cre);
            sum.SummaryColumns.Add(deb);

            this.gridTransactions.TableSummaryRows.Add(sum);
        }
예제 #2
0
        public Form1()
        {
            InitializeComponent();
            sfDataGrid      = new SfDataGrid();
            order           = new OrderInfoCollection();
            sfDataGrid.Dock = DockStyle.Fill;
            this.Controls.Add(sfDataGrid);
            sfDataGrid.ShowGroupDropArea = true;
            sfDataGrid.AllowGrouping     = true;
            sfDataGrid.DataSource        = order.Orders;
            GridTableSummaryRow tableSummaryRow1 = new GridTableSummaryRow();

            tableSummaryRow1.Name             = "TableSummary";
            tableSummaryRow1.ShowSummaryInRow = false;
            tableSummaryRow1.Position         = VerticalPosition.Bottom;
            GridSummaryColumn summaryColumn1 = new GridSummaryColumn();

            summaryColumn1.Name        = "PriceAmount";
            summaryColumn1.Format      = "{Sum:c}";
            summaryColumn1.MappingName = "UnitPrice";
            summaryColumn1.SummaryType = SummaryType.DoubleAggregate;
            tableSummaryRow1.SummaryColumns.Add(summaryColumn1);
            this.sfDataGrid.TableSummaryRows.Add(tableSummaryRow1);
            this.sfDataGrid.LiveDataUpdateMode = LiveDataUpdateMode.AllowSummaryUpdate;
            this.sfDataGrid.CellRenderers.Remove("Numeric");
            this.sfDataGrid.CellRenderers.Add("Numeric", new GridNumericCellRendererExt(this.sfDataGrid));
        }
예제 #3
0
        public override Android.Views.View GetSampleContent(Android.Content.Context context)
        {
            sfGrid                          = new SfDataGrid(context);
            viewModel                       = new GroupingViewModel();
            sfGrid.ItemsSource              = viewModel.ProductDetails;
            sfGrid.SelectionMode            = SelectionMode.Single;
            sfGrid.AllowGroupExpandCollapse = true;
            sfGrid.GroupColumnDescriptions.Add(new GroupColumnDescription()
            {
                ColumnName = "Product"
            });
            sfGrid.AutoGeneratingColumn  += OnAutoGenerateColumn;
            sfGrid.QueryRowHeight        += SfGrid_QueryRowHeight;
            sfGrid.AllowResizingColumn    = true;
            sfGrid.VerticalOverScrollMode = VerticalOverScrollMode.None;
            sfGrid.ColumnSizer            = ColumnSizer.Auto;
            //TableSummary codes
            GridTableSummaryRow summaryRow = new GridTableSummaryRow();

            summaryRow.Title            = "Total items:{Total} items";
            summaryRow.ShowSummaryInRow = true;
            summaryRow.Position         = Position.Bottom;
            GridSummaryColumn summaryColumn = new GridSummaryColumn();

            summaryColumn.Name        = "Total";
            summaryColumn.MappingName = "OrderID";
            summaryColumn.Format      = "{Count}";
            summaryColumn.SummaryType = Syncfusion.Data.SummaryType.CountAggregate;
            summaryRow.SummaryColumns.Add(summaryColumn);
            sfGrid.TableSummaryRows.Add(summaryRow);
            return(sfGrid);
        }
        public Form1()
        {
            InitializeComponent();
            var data = new OrderInfoCollection();

            sfDataGrid.DataSource = data.OrdersListDetails;

            GridTableSummaryRow tableSummaryRow1 = new GridTableSummaryRow();

            tableSummaryRow1.Name             = "TableSummary";
            tableSummaryRow1.ShowSummaryInRow = false;
            tableSummaryRow1.Title            = " Total Product Count: {OrderID}";
            tableSummaryRow1.Position         = VerticalPosition.Bottom;

            GridSummaryColumn summaryColumn1 = new GridSummaryColumn();

            summaryColumn1.Name        = "OrderID";
            summaryColumn1.SummaryType = SummaryType.CountAggregate;
            summaryColumn1.Format      = "{Count}";
            summaryColumn1.MappingName = "OrderID";

            GridSummaryColumn summaryColumn2 = new GridSummaryColumn();

            summaryColumn2.Name        = "Quantity";
            summaryColumn2.SummaryType = SummaryType.Int32Aggregate;
            summaryColumn2.Format      = "{Sum}";
            summaryColumn2.MappingName = "Quantity";

            tableSummaryRow1.SummaryColumns.Add(summaryColumn1);
            tableSummaryRow1.SummaryColumns.Add(summaryColumn2);

            this.sfDataGrid.TableSummaryRows.Add(tableSummaryRow1);
        }
예제 #5
0
        public Grouping()
        {
            this.SfGrid = new SfDataGrid();
            this.SfGrid.SelectionMode            = SelectionMode.Single;
            this.SfGrid.ItemsSource              = new GroupingViewModel().ProductDetails;
            this.SfGrid.AutoGeneratingColumn    += GridAutoGenerateColumns;
            this.SfGrid.HeaderRowHeight          = 45;
            this.SfGrid.RowHeight                = 45;
            this.SfGrid.AllowGroupExpandCollapse = true;
            this.SfGrid.AllowResizingColumn      = true;

            // Multi-Grouping
            this.SfGrid.GroupingMode = GroupingMode.Multiple;
            this.SfGrid.GroupColumnDescriptions.Add(new GroupColumnDescription()
            {
                ColumnName = "Product"
            });
            this.SfGrid.GroupColumnDescriptions.Add(new GroupColumnDescription()
            {
                ColumnName = "ProductModel"
            });

            // GroupSummary codes
            GridGroupSummaryRow groupSummaryRow = new GridGroupSummaryRow();

            groupSummaryRow.Title            = "Total items:{Total} items";
            groupSummaryRow.ShowSummaryInRow = true;
            GridSummaryColumn groupSummaryColumn = new GridSummaryColumn();

            groupSummaryColumn.Name        = "Total";
            groupSummaryColumn.MappingName = "Product";
            groupSummaryColumn.Format      = "{Count}";
            groupSummaryColumn.SummaryType = Syncfusion.Data.SummaryType.CountAggregate;
            groupSummaryRow.SummaryColumns.Add(groupSummaryColumn);
            SfGrid.GroupSummaryRows.Add(groupSummaryRow);

            //TableSummary codes
            GridTableSummaryRow summaryRow = new GridTableSummaryRow();

            summaryRow.Title            = "Total items:{Total} items";
            summaryRow.ShowSummaryInRow = true;
            summaryRow.Position         = Position.Bottom;
            GridSummaryColumn summaryColumn = new GridSummaryColumn();

            summaryColumn.Name        = "Total";
            summaryColumn.MappingName = "ProductID";
            summaryColumn.Format      = "{Count}";
            summaryColumn.SummaryType = Syncfusion.Data.SummaryType.CountAggregate;
            summaryRow.SummaryColumns.Add(summaryColumn);
            this.SfGrid.TableSummaryRows.Add(summaryRow);

            this.AddSubview(SfGrid);
        }
예제 #6
0
        private void SetGridLinesGroupColumnSummaries()
        {
            // Creates the GridSummaryRow.
            GridSummaryRow captionSummaryRow = new GridSummaryRow
            {
                Name             = "CaptionSummary",
                ShowSummaryInRow = false,
                TitleColumnCount = 3,
                Title            = "{ColumnName} = {Key} ({ItemsCount} Registos)"
            };

            GridSummaryColumn summaryColumn1 = new GridSummaryColumn
            {
                Name        = "CreditAmount",
                Format      = "{Sum:c}",
                MappingName = "CreditAmount",
                SummaryType = SummaryType.DoubleAggregate
            };

            GridSummaryColumn summaryColumn2 = new GridSummaryColumn
            {
                Name        = "DebitAmount",
                Format      = "{Sum:c}",
                MappingName = "DebitAmount",
                SummaryType = SummaryType.DoubleAggregate
            };

            GridSummaryColumn summaryColumn3 = new GridSummaryColumn
            {
                Name        = "CreditTaxPayable",
                Format      = "{Sum:c}",
                MappingName = "CreditTaxPayable",
                SummaryType = SummaryType.DoubleAggregate
            };

            GridSummaryColumn summaryColumn4 = new GridSummaryColumn
            {
                Name        = "DebitTaxPayable",
                Format      = "{Sum:c}",
                MappingName = "DebitTaxPayable",
                SummaryType = SummaryType.DoubleAggregate
            };

            // Adds the summary column in the SummaryColumns collection.
            captionSummaryRow.SummaryColumns.Add(summaryColumn1);
            captionSummaryRow.SummaryColumns.Add(summaryColumn2);
            captionSummaryRow.SummaryColumns.Add(summaryColumn3);
            captionSummaryRow.SummaryColumns.Add(summaryColumn4);

            // Initializes the caption summary row.
            this.gridLines.CaptionSummaryRow = captionSummaryRow;
        }
        public Form1()
        {
            InitializeComponent();
            var data = new OrderInfoCollection();

            sfDataGrid.DataSource = data.OrdersListDetails;

            GridTableSummaryRow tableSummaryRow1 = new GridTableSummaryRow();

            tableSummaryRow1.Name             = "TableSummary";
            tableSummaryRow1.ShowSummaryInRow = true;
            tableSummaryRow1.Title            = " Total Product Count: {ProductName}";
            tableSummaryRow1.Position         = VerticalPosition.Bottom;

            GridSummaryColumn summaryColumn1 = new GridSummaryColumn();

            summaryColumn1.Name        = "ProductName";
            summaryColumn1.SummaryType = SummaryType.CountAggregate;
            summaryColumn1.Format      = "{Count}";
            summaryColumn1.MappingName = "ProductName";

            tableSummaryRow1.SummaryColumns.Add(summaryColumn1);

            this.sfDataGrid.TableSummaryRows.Add(tableSummaryRow1);


            GridSummaryRow groupSummaryRow1 = new GridSummaryRow();

            groupSummaryRow1.Name             = "GroupSummary";
            groupSummaryRow1.ShowSummaryInRow = true;
            groupSummaryRow1.Title            = " Total Product Count: {ProductName}";


            // Adds the GridSummaryColumn in SummaryColumns collection.
            groupSummaryRow1.SummaryColumns.Add(summaryColumn1);

            // Adds the summary row in the GroupSummaryRows collection.
            this.sfDataGrid.GroupSummaryRows.Add(groupSummaryRow1);


            this.sfDataGrid.SelectionController = new CustomRowSelectionController(this.sfDataGrid);

            this.sfDataGrid.AutoExpandGroups = true;
            this.sfDataGrid.GroupColumnDescriptions.Add(new GroupColumnDescription()
            {
                ColumnName = "OrderDate"
            });
            this.sfDataGrid.ClearSelection();
        }
예제 #8
0
        private void SetGridAccountsTableSummaries()
        {
            GridTableSummaryRow sum = new GridTableSummaryRow
            {
                ShowSummaryInRow = false,
                TitleColumnCount = 1,
                Position         = VerticalPosition.Bottom,
                Title            = "Totais"
            };

            GridSummaryColumn odb = new GridSummaryColumn
            {
                Name        = "OpeningDebitBalance",
                Format      = "{Sum:c}",
                MappingName = "OpeningDebitBalance",
                SummaryType = SummaryType.DoubleAggregate
            };

            GridSummaryColumn ocb = new GridSummaryColumn
            {
                Name        = "OpeningCreditBalance",
                Format      = "{Sum:c}",
                MappingName = "OpeningCreditBalance",
                SummaryType = SummaryType.DoubleAggregate
            };

            GridSummaryColumn cdb = new GridSummaryColumn
            {
                Name        = "ClosingDebitBalance",
                Format      = "{Sum:c}",
                MappingName = "ClosingDebitBalance",
                SummaryType = SummaryType.DoubleAggregate
            };

            GridSummaryColumn ccb = new GridSummaryColumn
            {
                Name        = "ClosingCreditBalance",
                Format      = "{Sum:c}",
                MappingName = "ClosingCreditBalance",
                SummaryType = SummaryType.DoubleAggregate
            };

            sum.SummaryColumns.Add(odb);
            sum.SummaryColumns.Add(ocb);
            sum.SummaryColumns.Add(cdb);
            sum.SummaryColumns.Add(ccb);

            this.gridAccounts.TableSummaryRows.Add(sum);
        }
예제 #9
0
        private void SetGridLinesSummaries()
        {
            GridTableSummaryRow sum = new GridTableSummaryRow
            {
                ShowSummaryInRow = false,
                TitleColumnCount = 1,
                Position         = VerticalPosition.Bottom,
                Title            = "Totais"
            };

            GridSummaryColumn ca = new GridSummaryColumn
            {
                Name        = "CreditAmount",
                Format      = "{Sum:c}",
                MappingName = "CreditAmount",
                SummaryType = SummaryType.DoubleAggregate
            };

            GridSummaryColumn da = new GridSummaryColumn
            {
                Name        = "DebitAmount",
                Format      = "{Sum:c}",
                MappingName = "DebitAmount",
                SummaryType = SummaryType.DoubleAggregate
            };

            GridSummaryColumn ctp = new GridSummaryColumn
            {
                Name        = "CreditTaxPayable",
                Format      = "{Sum:c}",
                MappingName = "CreditTaxPayable",
                SummaryType = SummaryType.DoubleAggregate
            };

            GridSummaryColumn dtp = new GridSummaryColumn
            {
                Name        = "DebitTaxPayable",
                Format      = "{Sum:c}",
                MappingName = "DebitTaxPayable",
                SummaryType = SummaryType.DoubleAggregate
            };

            sum.SummaryColumns.Add(ca);
            sum.SummaryColumns.Add(da);
            sum.SummaryColumns.Add(ctp);
            sum.SummaryColumns.Add(dtp);

            this.gridLines.TableSummaryRows.Add(sum);
        }
예제 #10
0
        public void SetupSummary()
        {
            GridTableSummaryRow tableSummaryRow1 = new GridTableSummaryRow();

            tableSummaryRow1.Name             = "TableSummary";
            tableSummaryRow1.ShowSummaryInRow = false;
            tableSummaryRow1.Position         = VerticalPosition.Bottom;

            GridSummaryColumn summaryColumn1 = new GridSummaryColumn();

            summaryColumn1.Name        = "Tool.Price";
            summaryColumn1.SummaryType = SummaryType.DoubleAggregate;
            summaryColumn1.Format      = "Total Cost: {Sum:c}";
            summaryColumn1.MappingName = "Tool.Price";

            tableSummaryRow1.SummaryColumns.Add(summaryColumn1);

            this.sfDataGrid1.TableSummaryRows.Add(tableSummaryRow1);
        }
예제 #11
0
        private void SetGridDocumentsTableSummaries()
        {
            GridTableSummaryRow sum = new GridTableSummaryRow
            {
                ShowSummaryInRow = false,
                TitleColumnCount = 1,
                Position         = VerticalPosition.Bottom,
                Title            = "Totais"
            };

            GridSummaryColumn tp = new GridSummaryColumn
            {
                Name        = "TaxPayable",
                Format      = "{Sum:c}",
                MappingName = "TaxPayable",
                SummaryType = SummaryType.DoubleAggregate
            };

            GridSummaryColumn nt = new GridSummaryColumn
            {
                Name        = "NetTotal",
                Format      = "{Sum:c}",
                MappingName = "NetTotal",
                SummaryType = SummaryType.DoubleAggregate
            };

            GridSummaryColumn gt = new GridSummaryColumn
            {
                Name        = "GrossTotal",
                Format      = "{Sum:c}",
                MappingName = "GrossTotal",
                SummaryType = SummaryType.DoubleAggregate
            };

            sum.SummaryColumns.Add(tp);
            sum.SummaryColumns.Add(nt);
            sum.SummaryColumns.Add(gt);

            this.gridDocuments.TableSummaryRows.Add(sum);
        }
예제 #12
0
        private void SetupGroupSummary()
        {
            var groupSummaryRow1 = new GridSummaryRow {
                Name = "GroupSummary", ShowSummaryInRow = false
            };

            // Creates the GridSummaryColumn.
            var summaryColumn1 = new GridSummaryColumn
            {
                Name        = "UnitPrice",
                SummaryType = SummaryType.DoubleAggregate,
                Format      = "{Sum:c}",
                MappingName = "Tool.Price"
            };

            // Adds the GridSummaryColumn in SummaryColumns collection.
            groupSummaryRow1.SummaryColumns.Add(summaryColumn1);

            // Adds the summary row in the GroupSummaryRows collection.
            sdgOrders.GroupSummaryRows.Clear();
            sdgOrders.GroupSummaryRows.Add(groupSummaryRow1);
        }
예제 #13
0
        public CustomGrouping()
        {
            sfGrid = new SfDataGrid();
            this.sfGrid.SelectionMode = SelectionMode.Single;
            viewModel = new SalesInfoViewModel();
            sfGrid.AutoGeneratingColumn         += GridAutoGenerateColumns;
            sfGrid.ItemsSource                   = viewModel.DailySalesDetails;
            sfGrid.AllowSorting                  = true;
            this.sfGrid.HeaderRowHeight          = 45;
            this.sfGrid.RowHeight                = 45;
            this.sfGrid.AllowGroupExpandCollapse = true;
            sfGrid.SortComparers.Add(new SortComparer()
            {
                Comparer = new CustomSortComparer(), PropertyName = "Total"
            });
            sfGrid.GroupColumnDescriptions.Add(new GroupColumnDescription()
            {
                ColumnName = "Total", Converter = new GroupDataTimeConverter()
            });

            //TableSummary codes
            GridTableSummaryRow summaryRow = new GridTableSummaryRow();

            summaryRow.Title            = "Total items:{Total} items";
            summaryRow.ShowSummaryInRow = true;
            summaryRow.Position         = Position.Bottom;
            GridSummaryColumn summaryColumn = new GridSummaryColumn();

            summaryColumn.Name        = "Total";
            summaryColumn.MappingName = "Name";
            summaryColumn.Format      = "{Count}";
            summaryColumn.SummaryType = Syncfusion.Data.SummaryType.CountAggregate;
            summaryRow.SummaryColumns.Add(summaryColumn);
            sfGrid.TableSummaryRows.Add(summaryRow);

            this.AddSubview(sfGrid);
        }
예제 #14
0
        public override View GetSampleContent(Context context)
        {
            sfGrid                          = new SfDataGrid(context);
            viewModel                       = new SalesInfoViewModel();
            sfGrid.SelectionMode            = SelectionMode.Single;
            sfGrid.AutoGeneratingColumn    += GridAutoGenerateColumns;
            sfGrid.ItemsSource              = viewModel.DailySalesDetails;
            sfGrid.AllowSorting             = true;
            sfGrid.AllowGroupExpandCollapse = true;
            sfGrid.VerticalOverScrollMode   = VerticalOverScrollMode.None;
            sfGrid.SortComparers.Add(new SortComparer()
            {
                Comparer = new CustomSortComparer(), PropertyName = "Total"
            });
            sfGrid.GroupColumnDescriptions.Add(new GroupColumnDescription()
            {
                ColumnName = "Total", Converter = new GroupDataTimeConverter()
            });

            //TableSummary codes
            GridTableSummaryRow summaryRow = new GridTableSummaryRow();

            summaryRow.Title            = "Total items:{Total} items";
            summaryRow.ShowSummaryInRow = true;
            summaryRow.Position         = Position.Bottom;
            GridSummaryColumn summaryColumn = new GridSummaryColumn();

            summaryColumn.Name        = "Total";
            summaryColumn.MappingName = "Name";
            summaryColumn.Format      = "{Count}";
            summaryColumn.SummaryType = Syncfusion.Data.SummaryType.CountAggregate;
            summaryRow.SummaryColumns.Add(summaryColumn);
            sfGrid.TableSummaryRows.Add(summaryRow);

            return(sfGrid);
        }
예제 #15
0
        /// <summary>
        /// Sets the sample customization settings.
        /// </summary>
        private void SampleCustomization()
        {
            #region SfDataGrid settings
            sfDataGrid1.ThemeName                = "Office2016Colorful";
            sfDataGrid1.ShowRowHeader            = true;
            sfDataGrid1.AllowFiltering           = true;
            this.sfDataGrid1.AllowGrouping       = true;
            this.sfDataGrid1.ShowGroupDropArea   = true;
            this.sfDataGrid1.AutoGenerateColumns = false;
            this.sfDataGrid1.AutoSizeColumnsMode = AutoSizeColumnsMode.Fill;

            OrderInfoRepository orderInfo = new OrderInfoRepository();
            this.sfDataGrid1.DataSource = orderInfo.GetOrdersDetails(30);
            this.sfDataGrid1.Columns.Add(new GridTextColumn()
            {
                MappingName = "OrderID", HeaderText = "Order ID"
            });
            this.sfDataGrid1.Columns.Add(new GridTextColumn()
            {
                MappingName = "CustomerID", HeaderText = "Customer ID"
            });
            this.sfDataGrid1.Columns.Add(new GridTextColumn()
            {
                MappingName = "ShipCity", HeaderText = "Ship City"
            });
            this.sfDataGrid1.Columns.Add(new GridTextColumn()
            {
                MappingName = "ShipCity", HeaderText = "Ship Country"
            });
            this.sfDataGrid1.Columns.Add(new GridDateTimeColumn()
            {
                MappingName = "ShippingDate", HeaderText = "Shipping Date"
            });
            this.sfDataGrid1.Columns.Add(new GridNumericColumn()
            {
                MappingName = "Freight", HeaderText = "Freight", FormatMode = FormatMode.Currency
            });
            this.sfDataGrid1.Columns.Add(new GridCheckBoxColumn()
            {
                MappingName = "IsClosed", HeaderText = "Is Closed"
            });
            sfDataGrid1.AllowResizingColumns = true;
            #endregion

            #region themComboBox settings
            List <ThemeTypes> theme = new List <ThemeTypes>();
            theme.Add(new ThemeTypes()
            {
                ThemeName = "Office2016Black", Value = 1
            });
            theme.Add(new ThemeTypes()
            {
                ThemeName = "Office2016White", Value = 2
            });
            theme.Add(new ThemeTypes()
            {
                ThemeName = "Office2016DarkGray", Value = 3
            });
            theme.Add(new ThemeTypes()
            {
                ThemeName = "Office2016Colorful", Value = 4
            });
            comboBox1.DataSource            = theme;
            comboBox1.DisplayMember         = "ThemeName";
            comboBox1.ValueMember           = "ThemeName";
            comboBox1.SelectedValueChanged += comboBox1_SelectedValueChanged;
            comboBox1.SelectedValue         = "Office2016Colorful";
            #endregion

            this.checkBox1.Style      = Syncfusion.Windows.Forms.Tools.CheckBoxAdvStyle.Office2016Colorful;
            checkBox1.CheckedChanged += checkBox1_CheckedChanged;

            #region TableSummaryRow

            GridTableSummaryRow tableSummaryRow1 = new GridTableSummaryRow();
            tableSummaryRow1.Name             = "TableSummary";
            tableSummaryRow1.ShowSummaryInRow = true;
            tableSummaryRow1.Title            = " Total Count: {OrderID}";
            tableSummaryRow1.Position         = VerticalPosition.Bottom;

            GridSummaryColumn summaryColumn1 = new GridSummaryColumn();
            summaryColumn1.Name        = "OrderID";
            summaryColumn1.SummaryType = SummaryType.DoubleAggregate;
            summaryColumn1.Format      = "{Count}";
            summaryColumn1.MappingName = "OrderID";
            tableSummaryRow1.SummaryColumns.Add(summaryColumn1);
            this.sfDataGrid1.TableSummaryRows.Add(tableSummaryRow1);

            #endregion

            #region GroupSummaryRow

            // Creates the GridSummaryRow.
            GridSummaryRow groupSummaryRow1 = new GridSummaryRow();
            groupSummaryRow1.Name             = "GroupSummary";
            groupSummaryRow1.ShowSummaryInRow = false;
            groupSummaryRow1.Title            = "Total  $: { OrderID }";

            // Creates the GridSummaryColumn.
            GridSummaryColumn summaryColumn3 = new GridSummaryColumn();
            summaryColumn3.Name        = "OrderID";
            summaryColumn3.SummaryType = SummaryType.DoubleAggregate;
            summaryColumn3.Format      = "Total : {Sum:c}";
            summaryColumn3.MappingName = "OrderID";

            // Adds the GridSummaryColumn in SummaryColumns collection.
            groupSummaryRow1.SummaryColumns.Add(summaryColumn3);

            // Adds the summary row in the GroupSummaryRows collection.
            this.sfDataGrid1.GroupSummaryRows.Add(groupSummaryRow1);


            #endregion

            #region Relation Creation
            GridViewDefinition viewDefinition = new GridViewDefinition();
            viewDefinition.RelationalColumn = "OrderDetails";
            firstLevelSourceDataGrid        = new SfDataGrid();
            firstLevelSourceDataGrid.Columns.Add(new GridTextColumn()
            {
                MappingName = "OrderID", HeaderText = "Order ID"
            });
            firstLevelSourceDataGrid.Columns.Add(new GridDateTimeColumn()
            {
                MappingName = "OrderDate", HeaderText = "Order Date"
            });
            firstLevelSourceDataGrid.Columns.Add(new GridTextColumn()
            {
                MappingName = "CustomerID", HeaderText = "Customer ID"
            });
            firstLevelSourceDataGrid.Columns.Add(new GridTextColumn()
            {
                MappingName = "CustomerCity", HeaderText = "Customer City"
            });
            firstLevelSourceDataGrid.Columns.Add(new GridNumericColumn()
            {
                MappingName = "ProductID", HeaderText = "Product ID", FormatMode = FormatMode.Numeric
            });
            firstLevelSourceDataGrid.Columns.Add(new GridNumericColumn()
            {
                MappingName = "UnitPrice", HeaderText = "Unit Price", FormatMode = FormatMode.Currency
            });
            firstLevelSourceDataGrid.Columns.Add(new GridNumericColumn()
            {
                MappingName = "Quantity", HeaderText = "Quantity", FormatMode = FormatMode.Numeric
            });
            firstLevelSourceDataGrid.Columns.Add(new GridNumericColumn()
            {
                MappingName = "Discount", HeaderText = "Discount", FormatMode = FormatMode.Percent
            });
            StackedHeaderRow stackedHeaderRow = new StackedHeaderRow();
            stackedHeaderRow.StackedColumns.Add(new StackedColumn()
            {
                ChildColumns = "OrderID,OrderDate", HeaderText = "Order Details"
            });
            stackedHeaderRow.StackedColumns.Add(new StackedColumn()
            {
                ChildColumns = "CustomerID,CustomerCity", HeaderText = "Customer Details"
            });
            stackedHeaderRow.StackedColumns.Add(new StackedColumn()
            {
                ChildColumns = "ProductID,UnitPrice,Quantity,Discount", HeaderText = "Product Details"
            });
            firstLevelSourceDataGrid.AllowResizingColumns = true;
            firstLevelSourceDataGrid.AutoSizeColumnsMode  = AutoSizeColumnsMode.Fill;
            viewDefinition.DataGrid = firstLevelSourceDataGrid;
            this.sfDataGrid1.DetailsViewDefinitions.Add(viewDefinition);
            #endregion

            this.sfDataGrid1.HideEmptyGridViewDefinition = true;
        }