예제 #1
0
 public override DataTemplate SelectTemplate(object item, DependencyObject container)
 {
     if (item != null && item is DataGridRow)
     {
         return(TemplateGenerator.CreateDataGridRowHeaderTemplate());
     }
     return(base.SelectTemplate(item, container));
 }
예제 #2
0
        public override void Perform()
        {
            Window.Content = DataGrid;
            if (RowStyle != null)
            {
                RowStyle.Setters.Add(new Setter(DataGrid.RowBackgroundProperty, RowBackground));
                RowStyle.Setters.Add(new Setter(DataGrid.RowHeaderWidthProperty, RowHeaderWidth));
                RowStyle.Setters.Add(new Setter(DataGrid.RowHeightProperty, RowHeight));
                DataGrid.RowStyle = RowStyle;
            }
            if (RowStyle == null)
            {
                DataGridRowStyleSelector selector = new DataGridRowStyleSelector();
                DataGrid.RowStyleSelector = selector;
            }
            if (RowHeaderStyle != null)
            {
                RowHeaderStyle.Setters.Add(new Setter(DataGrid.RowHeaderWidthProperty, RowHeaderWidth));
            }
            DataGrid.RowHeaderStyle = RowHeaderStyle;

            if (DataGrid.Items.Count != 0)
            {
                DataGrid.ScrollIntoView(DataGrid.Items[(int)(Rate * DataGrid.Items.Count)]);
                DataGridRow = DataGrid.ItemContainerGenerator.ContainerFromIndex((int)(Rate * DataGrid.Items.Count)) as DataGridRow;
                DataGridRow.HeaderTemplate = TemplateGenerator.CreateDataGridRowHeaderTemplate();
                if (HeaderTemplateIsNull)
                {
                    DataGridRow.HeaderTemplate = null;
                }
                if (DataGridRow.HeaderTemplate == null)
                {
                    DataGridRow.HeaderTemplateSelector = new DataGridRowHeaderTemplateSelector();
                }

                DataGridRow.ItemsPanel = CreateDataGridRowItemsPanel();
            }
        }
예제 #3
0
        public override void Perform()
        {
            Window.Content = DataGrid;
            SetupDataGridItemsSource();
            if (ColumnHeaderStyle != null)
            {
                ColumnHeaderStyle.Setters.Add(new Setter(DataGrid.ColumnHeaderHeightProperty, ColumnHeaderHeight));
            }
            DataGrid.ColumnHeaderStyle = ColumnHeaderStyle;

            if (DataGrid.Columns.Count != 0)
            {
                DataGridColumn col = DataGrid.Columns[(int)(Rate * DataGrid.Columns.Count)];
                col.HeaderTemplate = TemplateGenerator.CreateDataGridColumnHeaderTemplate();
                if (HeaderTemplateIsNull)
                {
                    col.HeaderTemplate = null;
                }
                if (col.HeaderTemplate == null)
                {
                    col.HeaderTemplateSelector = new DataGridColumnHeaderTemplateSelector();
                }
            }
        }