public override void OnUpdateEditBinding(DataColumnBase dataColumn, GridHeaderCellControl element, object dataContext) { GridColumn column = dataColumn.GridColumn; #if WPF if (DataGrid != null && !DataGrid.IsLoaded) { column = column.Clone() as GridColumn; } #endif element.ClearValue(GridHeaderCellControl.ContentProperty); element.Column = column; if (column.HeaderText == null) { column.HeaderText = column.MappingName; } element.SetValue(ContentControl.ContentProperty, column.HeaderText); //We need bind the HorizontalHeaderContentAlignment value if only column has HorizontalHeaderContentAlignment value if (column.ReadLocalValue(GridColumn.HorizontalHeaderContentAlignmentProperty) != DependencyProperty.UnsetValue) { element.SetValue(Control.HorizontalContentAlignmentProperty, column.HorizontalHeaderContentAlignment); } else { element.ClearValue(Control.HorizontalContentAlignmentProperty); } element.Update(); element.DataContext = column; }
/// <summary> /// Computes the Padding for the Display UIElement. /// </summary> /// <param name="column">The column.</param> /// <returns></returns> private Thickness ProcessUIElementPadding(GridColumn column) { var padLeft = column.Padding.Left; var padRight = column.Padding.Right; var padTop = column.Padding.Top; var padBotton = column.Padding.Bottom; var padding = column.ReadLocalValue(GridColumn.PaddingProperty); #if WinRT || UNIVERSAL return(padding != DependencyProperty.UnsetValue ? new Thickness(3 + padLeft, 3 + padTop, 5 + padRight, 5 + padBotton) : new Thickness(3, 1, 6, 6)); #else return(padding != DependencyProperty.UnsetValue ? new Thickness(3 + padLeft, 1 + padTop, 3 + padRight, 1 + padBotton) : new Thickness(3, 1, 3, 1)); #endif }
private static Thickness ProcessUIElementPadding(GridColumn column) { var padLeft = column.Padding.Left; var padRight = column.Padding.Right; var padTop = column.Padding.Top; var padBotton = column.Padding.Bottom; var padding = column.ReadLocalValue(GridColumn.PaddingProperty); #if WinRT || UNIVERSAL return(padding != DependencyProperty.UnsetValue ? new Thickness(7.5 + padLeft, padTop, 2 + padRight, padBotton) : new Thickness(7.5, 1, 2, 0)); #else return(padding != DependencyProperty.UnsetValue ? new Thickness(1 + padLeft, 0 + padTop, 1 + padRight, 0 + padBotton) : new Thickness(1, 0, 1, 0)); #endif }
/// <summary> /// Computes the Padding for the Display UIElement. /// </summary> /// <param name="column">The column.</param> /// <remarks>Padding Cannot be applied at RunTime, as Currently We dont haven't constructed Padding via Binding Expression</remarks> /// <returns></returns> private static Thickness ProcessUIElementPadding(GridColumn column) { var padLeft = column.Padding.Left; var padRight = column.Padding.Right; var padTop = column.Padding.Top; var padBotton = column.Padding.Bottom; var padding = column.ReadLocalValue(GridColumn.PaddingProperty); #if WPF return(padding != DependencyProperty.UnsetValue ? new Thickness(3 + padLeft, 6 + padTop, 3 + padRight, 5 + padBotton) : new Thickness(3, 1, 3, 1)); #else return(padding != DependencyProperty.UnsetValue ? new Thickness(3 + padLeft, padTop, 2 + padRight, padBotton) : new Thickness(3, 1, 2, 0)); #endif }
internal bool CanResizeColumn(GridColumn column) { if (column == null) { return(false); } bool canResizeColumn = false; var resizeColumn = column.ReadLocalValue(GridColumn.AllowResizingProperty); if (resizeColumn != DependencyProperty.UnsetValue) { canResizeColumn = column.AllowResizing; } if ((resizeColumn == DependencyProperty.UnsetValue) && this.dataGrid.AllowResizingColumns) { canResizeColumn = true; } return(canResizeColumn); }