Class GroupGrid
Provides the Avalonia visual surface for a GroupGridEngine.
public class GroupGrid : Control, INotifyPropertyChanged, IDataContextProvider, ILogical, IThemeVariantHost, IResourceHost, IResourceNode, IStyleHost, ISetLogicalParent, ISetInheritanceParent, ISupportInitialize, INamed, IInputElement, IDataTemplateHost, ISetterValue, IGroupGridDropDownEditorHost
- Inheritance
-
AvaloniaObjectAnimatableStyledElementVisualLayoutableInteractiveInputElementControlGroupGrid
- Implements
-
IDataContextProviderILogicalIThemeVariantHostIResourceHostIResourceNodeIStyleHostISetLogicalParentISetInheritanceParentINamedIInputElementIDataTemplateHostISetterValue
- Inherited Members
-
Control.FocusAdornerPropertyControl.TagPropertyControl.ContextMenuPropertyControl.ContextFlyoutPropertyControl.RequestBringIntoViewEventControl.LoadedEventControl.UnloadedEventControl.SizeChangedEventControl.GetTemplateFocusTarget()Control.OnLoaded(RoutedEventArgs)Control.OnUnloaded(RoutedEventArgs)Control.OnSizeChanged(SizeChangedEventArgs)Control.OnAttachedToVisualTreeCore(VisualTreeAttachmentEventArgs)Control.OnDetachedFromVisualTreeCore(VisualTreeAttachmentEventArgs)Control.OnGotFocus(FocusChangedEventArgs)Control.OnLostFocus(FocusChangedEventArgs)Control.OnCreateAutomationPeer()Control.OnKeyUp(KeyEventArgs)Control.FocusAdornerControl.DataTemplatesControl.ContextMenuControl.ContextFlyoutControl.IsLoadedControl.TagControl.LoadedControl.UnloadedControl.SizeChangedInputElement.FocusablePropertyInputElement.IsEnabledPropertyInputElement.IsEffectivelyEnabledPropertyInputElement.CursorPropertyInputElement.IsKeyboardFocusWithinPropertyInputElement.IsFocusedPropertyInputElement.IsHitTestVisiblePropertyInputElement.IsPointerOverPropertyInputElement.IsTabStopPropertyInputElement.GotFocusEventInputElement.GettingFocusEventInputElement.LostFocusEventInputElement.LosingFocusEventInputElement.KeyDownEventInputElement.KeyUpEventInputElement.TabIndexPropertyInputElement.TextInputEventInputElement.TextInputMethodClientRequestedEventInputElement.PointerEnteredEventInputElement.PointerExitedEventInputElement.PointerMovedEventInputElement.PointerPressedEventInputElement.PointerReleasedEventInputElement.PointerCaptureLostEventInputElement.PointerWheelChangedEventInputElement.ContextRequestedEventInputElement.ContextCanceledEventInputElement.IsHoldingEnabledPropertyInputElement.IsHoldWithMouseEnabledPropertyInputElement.PinchEventInputElement.PinchEndedEventInputElement.PullGestureEventInputElement.PullGestureEndedEventInputElement.SwipeGestureEventInputElement.SwipeGestureEndedEventInputElement.ScrollGestureEventInputElement.ScrollGestureInertiaStartingEventInputElement.ScrollGestureEndedEventInputElement.PointerTouchPadGestureMagnifyEventInputElement.PointerTouchPadGestureRotateEventInputElement.PointerTouchPadGestureSwipeEventInputElement.TappedEventInputElement.RightTappedEventInputElement.HoldingEventInputElement.DoubleTappedEventInputElement.Focus(NavigationMethod, KeyModifiers)InputElement.OnAccessKey(RoutedEventArgs)InputElement.OnGettingFocus(FocusChangingEventArgs)InputElement.OnLosingFocus(FocusChangingEventArgs)InputElement.OnPointerEntered(PointerEventArgs)InputElement.GetNextTabStopOverride()InputElement.GetPreviousTabStopOverride()InputElement.GetFirstFocusableElementOverride()InputElement.GetLastFocusableElementOverride()InputElement.OnPointerCaptureLost(PointerCaptureLostEventArgs)InputElement.OnTapped(TappedEventArgs)InputElement.OnRightTapped(TappedEventArgs)InputElement.OnDoubleTapped(TappedEventArgs)InputElement.OnHolding(HoldingRoutedEventArgs)InputElement.UpdateIsEffectivelyEnabled()InputElement.GetIsHoldingEnabled(StyledElement)InputElement.GetIsHoldWithMouseEnabled(StyledElement)InputElement.FocusableInputElement.IsEnabledInputElement.CursorInputElement.IsKeyboardFocusWithinInputElement.IsFocusedInputElement.IsHitTestVisibleInputElement.IsPointerOverInputElement.IsTabStopInputElement.IsEffectivelyEnabledInputElement.TabIndexInputElement.KeyBindingsInputElement.IsEnabledCoreInputElement.GestureRecognizersInputElement.GotFocusInputElement.GettingFocusInputElement.LostFocusInputElement.LosingFocusInputElement.KeyDownInputElement.KeyUpInputElement.TextInputInputElement.TextInputMethodClientRequestedInputElement.PointerEnteredInputElement.PointerExitedInputElement.PointerMovedInputElement.PointerPressedInputElement.PointerReleasedInputElement.PointerCaptureLostInputElement.PointerWheelChangedInputElement.ContextRequestedInputElement.ContextCanceledInputElement.PinchInputElement.PinchEndedInputElement.PullGestureInputElement.PullGestureEndedInputElement.ScrollGestureInputElement.ScrollGestureInertiaStartingInputElement.ScrollGestureEndedInputElement.PointerTouchPadGestureMagnifyInputElement.PointerTouchPadGestureRotateInputElement.SwipeGestureInputElement.SwipeGestureEndedInputElement.PointerTouchPadGestureSwipeInputElement.TappedInputElement.RightTappedInputElement.HoldingInputElement.DoubleTappedInteractive.RaiseEvent(RoutedEventArgs)Interactive.BuildEventRoute(RoutedEvent)Layoutable.DesiredSizePropertyLayoutable.WidthPropertyLayoutable.HeightPropertyLayoutable.MinWidthPropertyLayoutable.MaxWidthPropertyLayoutable.MinHeightPropertyLayoutable.MaxHeightPropertyLayoutable.MarginPropertyLayoutable.HorizontalAlignmentPropertyLayoutable.VerticalAlignmentPropertyLayoutable.UseLayoutRoundingPropertyLayoutable.UpdateLayout()Layoutable.ApplyTemplate()Layoutable.Measure(Size)Layoutable.Arrange(Rect)Layoutable.InvalidateMeasure()Layoutable.InvalidateArrange()Layoutable.AffectsMeasure<T>(params AvaloniaProperty[])Layoutable.AffectsArrange<T>(params AvaloniaProperty[])Layoutable.MeasureCore(Size)Layoutable.ArrangeCore(Rect)Layoutable.OnMeasureInvalidated()Layoutable.OnVisualParentChanged(Visual, Visual)Layoutable.WidthLayoutable.HeightLayoutable.MinWidthLayoutable.MaxWidthLayoutable.MinHeightLayoutable.MaxHeightLayoutable.MarginLayoutable.HorizontalAlignmentLayoutable.VerticalAlignmentLayoutable.DesiredSizeLayoutable.IsMeasureValidLayoutable.IsArrangeValidLayoutable.UseLayoutRoundingLayoutable.EffectiveViewportChangedLayoutable.LayoutUpdatedVisual.BoundsPropertyVisual.ClipToBoundsPropertyVisual.ClipPropertyVisual.IsVisiblePropertyVisual.OpacityPropertyVisual.OpacityMaskPropertyVisual.CacheModePropertyVisual.EffectPropertyVisual.HasMirrorTransformPropertyVisual.RenderTransformPropertyVisual.RenderTransformOriginPropertyVisual.FlowDirectionPropertyVisual.VisualParentPropertyVisual.ZIndexPropertyVisual.GetFlowDirection(Visual)Visual.SetFlowDirection(Visual, FlowDirection)Visual.InvalidateVisual()Visual.AffectsRender<T>(params AvaloniaProperty[])Visual.OnAttachedToVisualTree(VisualTreeAttachmentEventArgs)Visual.OnDetachedFromVisualTree(VisualTreeAttachmentEventArgs)Visual.InvalidateMirrorTransform()Visual.BoundsVisual.ClipToBoundsVisual.ClipVisual.IsEffectivelyVisibleVisual.IsVisibleVisual.OpacityVisual.OpacityMaskVisual.CacheModeVisual.EffectVisual.HasMirrorTransformVisual.RenderTransformVisual.RenderTransformOriginVisual.FlowDirectionVisual.ZIndexVisual.VisualChildrenVisual.VisualRootVisual.BypassFlowDirectionPoliciesVisual.AttachedToVisualTreeVisual.DetachedFromVisualTreeStyledElement.DataContextPropertyStyledElement.NamePropertyStyledElement.ParentPropertyStyledElement.TemplatedParentPropertyStyledElement.ThemePropertyStyledElement.BeginInit()StyledElement.EndInit()StyledElement.ApplyStyling()StyledElement.InitializeIfNeeded()StyledElement.OnAttachedToLogicalTree(LogicalTreeAttachmentEventArgs)StyledElement.OnDetachedFromLogicalTree(LogicalTreeAttachmentEventArgs)StyledElement.OnDataContextBeginUpdate()StyledElement.OnDataContextEndUpdate()StyledElement.OnInitialized()StyledElement.NameStyledElement.ClassesStyledElement.DataContextStyledElement.IsInitializedStyledElement.StylesStyledElement.StyleKeyStyledElement.ResourcesStyledElement.TemplatedParentStyledElement.ThemeStyledElement.LogicalChildrenStyledElement.PseudoClassesStyledElement.StyleKeyOverrideStyledElement.ParentStyledElement.ActualThemeVariantStyledElement.AttachedToLogicalTreeStyledElement.DetachedFromLogicalTreeStyledElement.DataContextChangedStyledElement.InitializedStyledElement.ResourcesChangedStyledElement.ActualThemeVariantChangedAnimatable.TransitionsPropertyAnimatable.OnPropertyChangedCore(AvaloniaPropertyChangedEventArgs)Animatable.TransitionsAvaloniaObject.CheckAccess()AvaloniaObject.VerifyAccess()AvaloniaObject.ClearValue(AvaloniaProperty)AvaloniaObject.ClearValue<T>(AvaloniaProperty<T>)AvaloniaObject.ClearValue<T>(StyledProperty<T>)AvaloniaObject.ClearValue<T>(DirectPropertyBase<T>)AvaloniaObject.GetHashCode()AvaloniaObject.GetValue(AvaloniaProperty)AvaloniaObject.GetValue<T>(StyledProperty<T>)AvaloniaObject.GetValue<T>(DirectPropertyBase<T>)AvaloniaObject.GetBaseValue<T>(StyledProperty<T>)AvaloniaObject.IsAnimating(AvaloniaProperty)AvaloniaObject.IsSet(AvaloniaProperty)AvaloniaObject.SetValue<T>(StyledProperty<T>, T, BindingPriority)AvaloniaObject.SetValue<T>(DirectPropertyBase<T>, T)AvaloniaObject.SetCurrentValue<T>(StyledProperty<T>, T)AvaloniaObject.Bind(AvaloniaProperty, BindingBase)AvaloniaObject.CoerceValue(AvaloniaProperty)AvaloniaObject.RaisePropertyChanged<T>(DirectPropertyBase<T>, T, T)AvaloniaObject.SetAndRaise<T>(DirectPropertyBase<T>, ref T, T)AvaloniaObject.InheritanceParentAvaloniaObject.this[AvaloniaProperty]AvaloniaObject.this[IndexerDescriptor]AvaloniaObject.DispatcherAvaloniaObject.PropertyChanged
- Extension Methods
Constructors
GroupGrid()
Initializes a new instance of the GroupGrid class.
public GroupGrid()
Fields
ActiveFilterBrushProperty
Defines the ActiveFilterBrush property.
public static readonly StyledProperty<IBrush> ActiveFilterBrushProperty
Field Value
- StyledProperty<IBrush>
ColumnDragBrushProperty
Defines the ColumnDragBrush property.
public static readonly StyledProperty<IBrush> ColumnDragBrushProperty
Field Value
- StyledProperty<IBrush>
CurrentBorderBrushProperty
Defines the CurrentBorderBrush property.
public static readonly StyledProperty<IBrush> CurrentBorderBrushProperty
Field Value
- StyledProperty<IBrush>
CurrentBrushProperty
Defines the CurrentBrush property.
public static readonly StyledProperty<IBrush> CurrentBrushProperty
Field Value
- StyledProperty<IBrush>
DisabledTextBrushProperty
Defines the DisabledTextBrush property.
public static readonly StyledProperty<IBrush> DisabledTextBrushProperty
Field Value
- StyledProperty<IBrush>
EditingBorderBrushProperty
Defines the EditingBorderBrush property.
public static readonly StyledProperty<IBrush> EditingBorderBrushProperty
Field Value
- StyledProperty<IBrush>
EditingBrushProperty
Defines the EditingBrush property.
public static readonly StyledProperty<IBrush> EditingBrushProperty
Field Value
- StyledProperty<IBrush>
FilterBrushProperty
Defines the FilterBrush property.
public static readonly StyledProperty<IBrush> FilterBrushProperty
Field Value
- StyledProperty<IBrush>
FilteredCellBrushProperty
Defines the FilteredCellBrush property.
public static readonly StyledProperty<IBrush> FilteredCellBrushProperty
Field Value
- StyledProperty<IBrush>
FooterBrushProperty
Defines the FooterBrush property.
public static readonly StyledProperty<IBrush> FooterBrushProperty
Field Value
- StyledProperty<IBrush>
GridBackgroundBrushProperty
Defines the GridBackgroundBrush property.
public static readonly StyledProperty<IBrush> GridBackgroundBrushProperty
Field Value
- StyledProperty<IBrush>
GridLineBrushProperty
Defines the GridLineBrush property.
public static readonly StyledProperty<IBrush> GridLineBrushProperty
Field Value
- StyledProperty<IBrush>
GroupPanelBrushProperty
Defines the GroupPanelBrush property.
public static readonly StyledProperty<IBrush> GroupPanelBrushProperty
Field Value
- StyledProperty<IBrush>
GroupRowBrushProperty
Defines the GroupRowBrush property.
public static readonly StyledProperty<IBrush> GroupRowBrushProperty
Field Value
- StyledProperty<IBrush>
GroupSummaryBrushProperty
Defines the GroupSummaryBrush property.
public static readonly StyledProperty<IBrush> GroupSummaryBrushProperty
Field Value
- StyledProperty<IBrush>
HeaderBrushProperty
Defines the HeaderBrush property.
public static readonly StyledProperty<IBrush> HeaderBrushProperty
Field Value
- StyledProperty<IBrush>
MutedTextBrushProperty
Defines the MutedTextBrush property.
public static readonly StyledProperty<IBrush> MutedTextBrushProperty
Field Value
- StyledProperty<IBrush>
ResizeGuideBrushProperty
Defines the ResizeGuideBrush property.
public static readonly StyledProperty<IBrush> ResizeGuideBrushProperty
Field Value
- StyledProperty<IBrush>
ScrollBarThumbBrushProperty
Defines the ScrollBarThumbBrush property.
public static readonly StyledProperty<IBrush> ScrollBarThumbBrushProperty
Field Value
- StyledProperty<IBrush>
ScrollBarTrackBrushProperty
Defines the ScrollBarTrackBrush property.
public static readonly StyledProperty<IBrush> ScrollBarTrackBrushProperty
Field Value
- StyledProperty<IBrush>
SelectedBrushProperty
Defines the SelectedBrush property.
public static readonly StyledProperty<IBrush> SelectedBrushProperty
Field Value
- StyledProperty<IBrush>
TextBrushProperty
Defines the TextBrush property.
public static readonly StyledProperty<IBrush> TextBrushProperty
Field Value
- StyledProperty<IBrush>
ToolBarBrushProperty
Defines the ToolBarBrush property.
public static readonly StyledProperty<IBrush> ToolBarBrushProperty
Field Value
- StyledProperty<IBrush>
ToolButtonBrushProperty
Defines the ToolButtonBrush property.
public static readonly StyledProperty<IBrush> ToolButtonBrushProperty
Field Value
- StyledProperty<IBrush>
ToolButtonHoverBrushProperty
Defines the ToolButtonHoverBrush property.
public static readonly StyledProperty<IBrush> ToolButtonHoverBrushProperty
Field Value
- StyledProperty<IBrush>
Properties
ActiveFilterBrush
Gets or sets the active filter cell background brush.
public IBrush ActiveFilterBrush { get; set; }
Property Value
- IBrush
AreIdColumnsVisible
Gets or sets a value indicating whether columns named Id or ending with Id are visible.
public bool AreIdColumnsVisible { get; set; }
Property Value
AutoGenerateColumns
Gets or sets a value indicating whether columns are generated from public item properties or data-view columns when columns are empty.
public bool AutoGenerateColumns { get; set; }
Property Value
ColumnDragBrush
Gets or sets the column drag ghost brush.
public IBrush ColumnDragBrush { get; set; }
Property Value
- IBrush
Columns
Gets the grid columns.
public ObservableCollection<GroupGridColumn> Columns { get; }
Property Value
CurrentBorderBrush
Gets or sets the current cell border brush.
public IBrush CurrentBorderBrush { get; set; }
Property Value
- IBrush
CurrentBrush
Gets or sets the current cell background brush.
public IBrush CurrentBrush { get; set; }
Property Value
- IBrush
CurrentCell
Gets the current cell.
public GroupGridCell CurrentCell { get; }
Property Value
CurrentRow
Gets the current adapter row object, or null when there is no current row.
public object CurrentRow { get; }
Property Value
CurrentRowIndex
Gets the current adapter row index, or -1 when there is no current row.
public int CurrentRowIndex { get; }
Property Value
DataAdapter
Gets or sets the data adapter.
public IGroupGridDataAdapter DataAdapter { get; set; }
Property Value
DisabledTextBrush
Gets or sets the disabled text brush.
public IBrush DisabledTextBrush { get; set; }
Property Value
- IBrush
DropDownPlacementMode
Gets or sets how in-place editor drop-down controls are hosted.
public GroupGridDropDownPlacementMode DropDownPlacementMode { get; set; }
Property Value
EditingBorderBrush
Gets or sets the editing cell border brush.
public IBrush EditingBorderBrush { get; set; }
Property Value
- IBrush
EditingBrush
Gets or sets the editing cell background brush.
public IBrush EditingBrush { get; set; }
Property Value
- IBrush
EditingCell
Gets the editing cell.
public GroupGridCell EditingCell { get; }
Property Value
EmptyGroupPanelText
Gets or sets the text displayed in the group panel when no columns are grouped.
public string EmptyGroupPanelText { get; set; }
Property Value
Engine
Gets or sets the group grid engine rendered by this control.
public GroupGridEngine Engine { get; set; }
Property Value
FilterBrush
Gets or sets the filter row background brush.
public IBrush FilterBrush { get; set; }
Property Value
- IBrush
FilterCount
Gets the number of active column filters.
public int FilterCount { get; }
Property Value
FilteredCellBrush
Gets or sets the filtered cell background brush.
public IBrush FilteredCellBrush { get; set; }
Property Value
- IBrush
FirstVisibleNodeIndex
Gets the first visible node index in the virtual viewport.
public int FirstVisibleNodeIndex { get; }
Property Value
FixedBandHeight
Gets the total height of the fixed non-body bands.
public double FixedBandHeight { get; }
Property Value
FooterBrush
Gets or sets the footer summary background brush.
public IBrush FooterBrush { get; set; }
Property Value
- IBrush
GridBackgroundBrush
Gets or sets the grid body background brush.
public IBrush GridBackgroundBrush { get; set; }
Property Value
- IBrush
GridLineBrush
Gets or sets the grid line brush.
public IBrush GridLineBrush { get; set; }
Property Value
- IBrush
GroupColumns
Gets the grouped columns in grouping order.
public IReadOnlyList<GroupGridColumn> GroupColumns { get; }
Property Value
GroupPanelBrush
Gets or sets the group panel background brush.
public IBrush GroupPanelBrush { get; set; }
Property Value
- IBrush
GroupRowBrush
Gets or sets the group row background brush.
public IBrush GroupRowBrush { get; set; }
Property Value
- IBrush
GroupSummaryBrush
Gets or sets the group summary row background brush.
public IBrush GroupSummaryBrush { get; set; }
Property Value
- IBrush
HasCurrentCell
Gets a value indicating whether the grid has a current cell.
public bool HasCurrentCell { get; }
Property Value
HasFilters
Gets a value indicating whether any column filter is active.
public bool HasFilters { get; }
Property Value
HasSelectedCell
Gets a value indicating whether the grid has a selected cell.
public bool HasSelectedCell { get; }
Property Value
HeaderBrush
Gets or sets the column header background brush.
public IBrush HeaderBrush { get; set; }
Property Value
- IBrush
HorizontalOffset
Gets the horizontal scroll offset in pixels.
public double HorizontalOffset { get; }
Property Value
IsColumnHeadersVisible
Gets or sets a value indicating whether column headers are visible.
public bool IsColumnHeadersVisible { get; set; }
Property Value
IsColumnManagerMenuItemVisible
Gets or sets a value indicating whether the column manager menu item is visible in the column context menu.
public bool IsColumnManagerMenuItemVisible { get; set; }
Property Value
IsDeleteButtonVisible
Gets or sets a value indicating whether the default delete toolbar button is visible.
public bool IsDeleteButtonVisible { get; set; }
Property Value
IsEditButtonVisible
Gets or sets a value indicating whether the default edit toolbar button is visible.
public bool IsEditButtonVisible { get; set; }
Property Value
IsEditing
Gets a value indicating whether the grid is editing a cell.
public bool IsEditing { get; }
Property Value
IsFilterPanelVisible
Gets or sets a value indicating whether the filter panel band is visible.
public bool IsFilterPanelVisible { get; set; }
Property Value
IsGroupPanelVisible
Gets or sets a value indicating whether the group panel band is visible.
public bool IsGroupPanelVisible { get; set; }
Property Value
IsInsertButtonVisible
Gets or sets a value indicating whether the default insert toolbar button is visible.
public bool IsInsertButtonVisible { get; set; }
Property Value
IsReadOnly
Gets or sets a value indicating whether editing is disabled for the whole grid.
public bool IsReadOnly { get; set; }
Property Value
IsSettingsMenuItemsVisible
Gets or sets a value indicating whether the save/load settings menu items are visible in the column context menu.
public bool IsSettingsMenuItemsVisible { get; set; }
Property Value
IsToolBarVisible
Gets or sets a value indicating whether the toolbar band is visible.
public bool IsToolBarVisible { get; set; }
Property Value
IsTotalsSummaryVisible
Gets or sets a value indicating whether the totals summary band is visible.
public bool IsTotalsSummaryVisible { get; set; }
Property Value
ItemsSource
Gets or sets an item source that is a DataTable, DataView, or implements IList<T>. When a DataTable is assigned, its DefaultView is used.
public object ItemsSource { get; set; }
Property Value
LastDropDownRect
Gets the last arranged drop-down host rectangle used for drop-down geometry diagnostics.
public Rect LastDropDownRect { get; }
Property Value
- Rect
LastEditorRect
Gets the last arranged editor rectangle used for drop-down geometry diagnostics.
public Rect LastEditorRect { get; }
Property Value
- Rect
LayoutMetrics
Gets the layout metrics used by the grid.
public GroupGridLayoutMetrics LayoutMetrics { get; }
Property Value
MutedTextBrush
Gets or sets the muted text brush.
public IBrush MutedTextBrush { get; set; }
Property Value
- IBrush
ResizeGuideBrush
Gets or sets the resize and drop guide brush.
public IBrush ResizeGuideBrush { get; set; }
Property Value
- IBrush
RowCount
Gets the number of adapter rows.
public int RowCount { get; }
Property Value
ScrollBarThumbBrush
Gets or sets the scrollbar thumb brush.
public IBrush ScrollBarThumbBrush { get; set; }
Property Value
- IBrush
ScrollBarTrackBrush
Gets or sets the scrollbar track brush.
public IBrush ScrollBarTrackBrush { get; set; }
Property Value
- IBrush
SelectedBrush
Gets or sets the selected row or cell background brush.
public IBrush SelectedBrush { get; set; }
Property Value
- IBrush
SelectedCell
Gets the selected cell.
public GroupGridCell SelectedCell { get; }
Property Value
SettingsSuggestedFileName
Gets or sets the suggested file name used by the built-in save settings file picker.
public string SettingsSuggestedFileName { get; set; }
Property Value
SortColumn
Gets the sorted column, or null when sorting is not active.
public GroupGridColumn SortColumn { get; }
Property Value
SortDirection
Gets the active sort direction.
public GroupGridSortDirection SortDirection { get; }
Property Value
TextBrush
Gets or sets the primary text brush.
public IBrush TextBrush { get; set; }
Property Value
- IBrush
ToolBarBrush
Gets or sets the toolbar background brush.
public IBrush ToolBarBrush { get; set; }
Property Value
- IBrush
ToolButtonBrush
Gets or sets the toolbar button background brush.
public IBrush ToolButtonBrush { get; set; }
Property Value
- IBrush
ToolButtonHoverBrush
Gets or sets the toolbar button hover background brush.
public IBrush ToolButtonHoverBrush { get; set; }
Property Value
- IBrush
ToolButtons
Gets the toolbar buttons. The built-in buttons are named Insert, Delete, and Edit.
public ObservableCollection<GroupGridToolButton> ToolButtons { get; }
Property Value
Viewport
Gets the viewport window into the logical visible-node list.
public GroupGridViewport Viewport { get; }
Property Value
VisibleNodeCount
Gets the number of visible projected nodes.
public int VisibleNodeCount { get; }
Property Value
Methods
AddButton(GroupGridToolButton, GroupGridToolButtonAlignment)
Adds a toolbar button to the requested side.
public GroupGridToolButton AddButton(GroupGridToolButton Button, GroupGridToolButtonAlignment Alignment = GroupGridToolButtonAlignment.Left)
Parameters
ButtonGroupGridToolButtonThe button to add.
AlignmentGroupGridToolButtonAlignmentThe toolbar side.
Returns
- GroupGridToolButton
The added button.
AddButton(GroupGridToolButtonAlignment, string, string, string)
Creates and adds a toolbar button to the requested side.
public GroupGridToolButton AddButton(GroupGridToolButtonAlignment Alignment, string Name, string Text, string ToolTip = "")
Parameters
AlignmentGroupGridToolButtonAlignmentThe toolbar side.
NamestringThe button name.
TextstringThe compact display text.
ToolTipstringThe tooltip text.
Returns
- GroupGridToolButton
The added button.
ApplySettings(GroupGridSettings)
Applies a serializable settings object to the current grid layout.
public void ApplySettings(GroupGridSettings Settings)
Parameters
SettingsGroupGridSettingsThe grid settings.
ArrangeOverride(Size)
Positions child elements as part of a layout pass.
protected override Size ArrangeOverride(Size FinalSize)
Parameters
FinalSizeSize
Returns
- Size
The actual size used.
BeginEdit()
Begins editing the current cell.
public bool BeginEdit()
Returns
- bool
True if editing started; otherwise, false.
BestFitColumn(GroupGridColumn, int)
Resizes a visible value column to fit its header, filter text, and projected data row text.
public bool BestFitColumn(GroupGridColumn Column, int MaxRows = 2500)
Parameters
ColumnGroupGridColumnThe grid column.
MaxRowsintThe maximum number of projected data rows to measure. Use zero or a negative value to measure all rows.
Returns
- bool
True if the column width changed; otherwise, false.
BestFitColumn(string, int)
Resizes a visible value column to fit its header, filter text, and projected data row text.
public bool BestFitColumn(string ColumnName, int MaxRows = 2500)
Parameters
ColumnNamestringThe column name.
MaxRowsintThe maximum number of projected data rows to measure. Use zero or a negative value to measure all rows.
Returns
- bool
True if the column was found and its width changed; otherwise, false.
BestFitColumns(int)
Resizes all visible value columns to fit their headers, filter text, and projected data row text.
public int BestFitColumns(int MaxRows = 2500)
Parameters
MaxRowsintThe maximum number of projected data rows to measure per column. Use zero or a negative value to measure all rows.
Returns
- int
The number of columns whose width changed.
CanDeleteCurrentRow()
Returns true when the current row can be deleted.
public bool CanDeleteCurrentRow()
Returns
- bool
True when the current row can be deleted; otherwise, false.
CanInsertRow()
Returns true when a new row can be inserted after the current row.
public bool CanInsertRow()
Returns
- bool
True when a row can be inserted; otherwise, false.
CancelEdit()
Cancels the current edit.
public bool CancelEdit()
Returns
- bool
True if an edit was canceled; otherwise, false.
ClearColumnFilter(GroupGridColumn)
Clears the text filter for a column.
public bool ClearColumnFilter(GroupGridColumn Column)
Parameters
ColumnGroupGridColumnThe grid column.
Returns
- bool
True if the filter changed; otherwise, false.
ClearCurrentCell()
Clears the current cell.
public void ClearCurrentCell()
ClearFilters()
Clears all column filters.
public bool ClearFilters()
Returns
- bool
True if any filter was cleared; otherwise, false.
ClearSelection()
Clears the selected cell.
public void ClearSelection()
ClearSort()
Clears the active column sorting.
public bool ClearSort()
Returns
- bool
True if sorting changed; otherwise, false.
CommitEdit(object)
Commits the edited value.
public bool CommitEdit(object Value)
Parameters
ValueobjectThe editor value.
Returns
- bool
True if the edit was committed; otherwise, false.
CreateExportSnapshot()
Creates an export snapshot from the current visible grid projection.
public GroupGridExportSnapshot CreateExportSnapshot()
Returns
- GroupGridExportSnapshot
The export snapshot.
CreateSettings(string)
Creates a serializable settings object from the current grid layout.
public GroupGridSettings CreateSettings(string Name = "Default")
Parameters
NamestringThe settings name.
Returns
- GroupGridSettings
The grid settings.
DeleteCurrentRow()
Deletes the current row.
public bool DeleteCurrentRow()
Returns
- bool
True if a row was deleted; otherwise, false.
GetAllColumns()
Returns all columns in grid column order.
public IReadOnlyList<GroupGridColumn> GetAllColumns()
Returns
- IReadOnlyList<GroupGridColumn>
A snapshot list with all columns.
GetColumnFilter(GroupGridColumn)
Returns the text filter applied to a column.
public string GetColumnFilter(GroupGridColumn Column)
Parameters
ColumnGroupGridColumnThe grid column.
Returns
- string
The filter text, or an empty string when no filter is applied.
GetGroupedColumns()
Returns grouped columns in grouping order.
public IReadOnlyList<GroupGridColumn> GetGroupedColumns()
Returns
- IReadOnlyList<GroupGridColumn>
A snapshot list with grouped columns.
GetHiddenColumns()
Returns hidden columns in grid column order.
public IReadOnlyList<GroupGridColumn> GetHiddenColumns()
Returns
- IReadOnlyList<GroupGridColumn>
A snapshot list with hidden columns.
GetToolButton(string)
Returns a toolbar button by name.
public GroupGridToolButton GetToolButton(string Name)
Parameters
NamestringThe button name.
Returns
- GroupGridToolButton
The toolbar button, or null when not found.
GetVisibleColumns()
Returns the visible columns in display order.
public IReadOnlyList<GroupGridColumn> GetVisibleColumns()
Returns
- IReadOnlyList<GroupGridColumn>
The visible columns.
GetVisibleOrderedColumns()
Returns visible value columns in the order they are displayed in the header band.
public IReadOnlyList<GroupGridColumn> GetVisibleOrderedColumns()
Returns
- IReadOnlyList<GroupGridColumn>
A snapshot list with visible value columns.
GetVisibleValueColumns()
Returns the visible value columns in display order.
public IReadOnlyList<GroupGridColumn> GetVisibleValueColumns()
Returns
- IReadOnlyList<GroupGridColumn>
The visible value columns.
GroupColumn(GroupGridColumn, int)
Adds a column to the grouping list.
public bool GroupColumn(GroupGridColumn Column, int GroupIndex = -1)
Parameters
ColumnGroupGridColumnThe grid column.
GroupIndexintThe group index, or -1 to append.
Returns
- bool
True if the column was grouped; otherwise, false.
HitTest(Point)
Performs a control-level hit test using visible bands, scrollbars, fixed areas, and horizontal scroll offset.
public GroupGridHitTestResult HitTest(Point Point)
Parameters
PointPointThe point in grid coordinates.
Returns
- GroupGridHitTestResult
The hit-test result.
InsertButtonAfter(string, GroupGridToolButton)
Inserts a toolbar button after an existing button.
public bool InsertButtonAfter(string ExistingButtonName, GroupGridToolButton Button)
Parameters
ExistingButtonNamestringThe existing button name.
ButtonGroupGridToolButtonThe button to insert.
Returns
- bool
True if the button was inserted; otherwise, false.
InsertButtonAfter(string, string, string, string)
Creates and inserts a toolbar button after an existing button.
public GroupGridToolButton InsertButtonAfter(string ExistingButtonName, string Name, string Text, string ToolTip = "")
Parameters
ExistingButtonNamestringThe existing button name.
NamestringThe button name.
TextstringThe compact display text.
ToolTipstringThe tooltip text.
Returns
- GroupGridToolButton
The inserted button, or null when the existing button is not found.
InsertButtonBefore(string, GroupGridToolButton)
Inserts a toolbar button before an existing button.
public bool InsertButtonBefore(string ExistingButtonName, GroupGridToolButton Button)
Parameters
ExistingButtonNamestringThe existing button name.
ButtonGroupGridToolButtonThe button to insert.
Returns
- bool
True if the button was inserted; otherwise, false.
InsertButtonBefore(string, string, string, string)
Creates and inserts a toolbar button before an existing button.
public GroupGridToolButton InsertButtonBefore(string ExistingButtonName, string Name, string Text, string ToolTip = "")
Parameters
ExistingButtonNamestringThe existing button name.
NamestringThe button name.
TextstringThe compact display text.
ToolTipstringThe tooltip text.
Returns
- GroupGridToolButton
The inserted button, or null when the existing button is not found.
InsertRow()
Inserts a new row after the current row.
public bool InsertRow()
Returns
- bool
True if a row was inserted; otherwise, false.
LoadSettings(string)
Loads grid settings from a JSON file and applies them to the current grid layout.
public bool LoadSettings(string FilePath)
Parameters
FilePathstringThe full file path where settings are loaded from.
Returns
- bool
True if settings were loaded and applied; otherwise, false.
MeasureOverride(Size)
Measures the control and its child elements as part of a layout pass.
protected override Size MeasureOverride(Size AvailableSize)
Parameters
AvailableSizeSize
Returns
- Size
The desired size for the control.
MoveColumn(GroupGridColumn, int)
Moves a column to a new display index in the column collection.
public bool MoveColumn(GroupGridColumn Column, int ColumnIndex)
Parameters
ColumnGroupGridColumnThe grid column.
ColumnIndexintThe new column index.
Returns
- bool
True if the column moved; otherwise, false.
MoveCurrentCell(int, int)
Moves the current cell by visible row and column deltas.
public bool MoveCurrentCell(int RowDelta, int ColumnDelta)
Parameters
Returns
- bool
True if the current cell moved; otherwise, false.
MoveGroupedColumn(GroupGridColumn, int)
Moves a grouped column to a new group index.
public bool MoveGroupedColumn(GroupGridColumn Column, int GroupIndex)
Parameters
ColumnGroupGridColumnThe grouped column.
GroupIndexintThe new group index.
Returns
- bool
True if the column moved; otherwise, false.
OnKeyDown(KeyEventArgs)
Invoked when an unhandled Avalonia.Input.InputElement.KeyDownEvent reaches an element in its route that is derived from this class. Implement this method to add class handling for this event.
protected override void OnKeyDown(KeyEventArgs Args)
Parameters
ArgsKeyEventArgs
OnPointerExited(PointerEventArgs)
Invoked when an unhandled Avalonia.Input.InputElement.PointerExitedEvent reaches an element in its route that is derived from this class. Implement this method to add class handling for this event.
protected override void OnPointerExited(PointerEventArgs Args)
Parameters
ArgsPointerEventArgs
OnPointerMoved(PointerEventArgs)
Invoked when an unhandled Avalonia.Input.InputElement.PointerMovedEvent reaches an element in its route that is derived from this class. Implement this method to add class handling for this event.
protected override void OnPointerMoved(PointerEventArgs Args)
Parameters
ArgsPointerEventArgs
OnPointerPressed(PointerPressedEventArgs)
Invoked when an unhandled Avalonia.Input.InputElement.PointerPressedEvent reaches an element in its route that is derived from this class. Implement this method to add class handling for this event.
protected override void OnPointerPressed(PointerPressedEventArgs Args)
Parameters
ArgsPointerPressedEventArgs
OnPointerReleased(PointerReleasedEventArgs)
Invoked when an unhandled Avalonia.Input.InputElement.PointerReleasedEvent reaches an element in its route that is derived from this class. Implement this method to add class handling for this event.
protected override void OnPointerReleased(PointerReleasedEventArgs Args)
Parameters
ArgsPointerReleasedEventArgs
OnPointerWheelChanged(PointerWheelEventArgs)
Invoked when an unhandled Avalonia.Input.InputElement.PointerWheelChangedEvent reaches an element in its route that is derived from this class. Implement this method to add class handling for this event.
protected override void OnPointerWheelChanged(PointerWheelEventArgs Args)
Parameters
ArgsPointerWheelEventArgs
OnPropertyChanged(AvaloniaPropertyChangedEventArgs)
Called when a avalonia property changes on the object.
protected override void OnPropertyChanged(AvaloniaPropertyChangedEventArgs Args)
Parameters
ArgsAvaloniaPropertyChangedEventArgs
OnTextInput(TextInputEventArgs)
Invoked when an unhandled Avalonia.Input.InputElement.TextInputEvent reaches an element in its route that is derived from this class. Implement this method to add class handling for this event.
protected override void OnTextInput(TextInputEventArgs Args)
Parameters
ArgsTextInputEventArgs
Render(DrawingContext)
Renders the visual to a Avalonia.Media.DrawingContext.
public override void Render(DrawingContext Context)
Parameters
ContextDrawingContext
RequestEdit()
Raises the edit requested event.
public void RequestEdit()
SaveExport(GroupGridExporter, string)
Exports the current grid using a specified exporter.
public void SaveExport(GroupGridExporter Exporter, string FilePath)
Parameters
ExporterGroupGridExporterThe exporter.
FilePathstringThe full export file path.
SaveSettings(string, string)
Saves the current grid settings to a JSON file.
public void SaveSettings(string FilePath, string Name = "Default")
Parameters
ScrollCurrentCellIntoView()
Scrolls the current cell into the virtual viewport.
public bool ScrollCurrentCellIntoView()
Returns
- bool
True if the viewport changed; otherwise, false.
ScrollToRow(int)
Scrolls an adapter row into the virtual viewport.
public bool ScrollToRow(int RowIndex)
Parameters
RowIndexintThe adapter row index.
Returns
- bool
True if the row exists in the current projection and scrolling succeeded or was not needed; otherwise, false.
SelectCurrentCell()
Selects the current cell.
public bool SelectCurrentCell()
Returns
- bool
True if the selected cell changed; otherwise, false.
SetColumnFilter(GroupGridColumn, string)
Sets the contains-text filter for a column.
public bool SetColumnFilter(GroupGridColumn Column, string FilterText)
Parameters
ColumnGroupGridColumnThe grid column.
FilterTextstringThe filter text.
Returns
- bool
True if the filter changed; otherwise, false.
SetColumnReadOnly(string, bool)
Sets a column read-only state by field name.
public bool SetColumnReadOnly(string FieldName, bool IsReadOnly)
Parameters
FieldNamestringThe column field name.
IsReadOnlyboolTrue to make the column read-only; false to make it editable.
Returns
- bool
True if the column read-only state changed; otherwise, false.
SetColumnVisible(GroupGridColumn, bool)
Shows or hides a column.
public bool SetColumnVisible(GroupGridColumn Column, bool IsVisible)
Parameters
ColumnGroupGridColumnThe grid column.
IsVisibleboolTrue to show the column; false to hide it.
Returns
- bool
True if the column visibility changed; otherwise, false.
SetColumnVisible(string, bool)
Shows or hides a column by field name.
public bool SetColumnVisible(string FieldName, bool IsVisible)
Parameters
Returns
- bool
True if the column visibility changed; otherwise, false.
SetColumnsReadOnly(string[], bool)
Sets columns read-only state by field name.
public bool SetColumnsReadOnly(string[] FieldNames, bool IsReadOnly)
Parameters
FieldNamesstring[]The column field names.
IsReadOnlyboolTrue to make the columns read-only; false to make them editable.
Returns
- bool
True if any column read-only state changed; otherwise, false.
SetColumnsVisible(string[], bool)
Shows or hides columns by field name.
public bool SetColumnsVisible(string[] FieldNames, bool IsVisible)
Parameters
FieldNamesstring[]The column field names.
IsVisibleboolTrue to show the columns; false to hide them.
Returns
- bool
True if any column visibility changed; otherwise, false.
SetCurrentCell(GroupGridCell)
Sets the current cell.
public bool SetCurrentCell(GroupGridCell Cell)
Parameters
CellGroupGridCellThe current cell.
Returns
- bool
True if the current cell changed; otherwise, false.
SetCurrentCell(int, GroupGridColumn)
Sets the current cell by row index and column.
public bool SetCurrentCell(int RowIndex, GroupGridColumn Column)
Parameters
RowIndexintThe adapter row index.
ColumnGroupGridColumnThe grid column.
Returns
- bool
True if the current cell changed; otherwise, false.
SetFirstVisibleNodeIndex(int)
Sets the first visible node index in the virtual viewport.
public bool SetFirstVisibleNodeIndex(int VisibleNodeIndex)
Parameters
VisibleNodeIndexintThe first visible node index.
Returns
- bool
True if the viewport changed; otherwise, false.
SetGroupExpanded(int, bool)
Sets the expanded state of a group node by visible-node index.
public bool SetGroupExpanded(int VisibleNodeIndex, bool IsExpanded)
Parameters
Returns
- bool
True if the group state changed; otherwise, false.
SetHorizontalOffset(double)
Sets the horizontal scroll offset in pixels.
public bool SetHorizontalOffset(double HorizontalOffset)
Parameters
HorizontalOffsetdoubleThe horizontal scroll offset.
Returns
- bool
True if the offset changed; otherwise, false.
SetSelectedCell(GroupGridCell)
Sets the selected cell.
public bool SetSelectedCell(GroupGridCell Cell)
Parameters
CellGroupGridCellThe selected cell.
Returns
- bool
True if the selected cell changed; otherwise, false.
ToggleGroupExpanded(int)
Toggles the expanded state of a group node by visible-node index.
public bool ToggleGroupExpanded(int VisibleNodeIndex)
Parameters
VisibleNodeIndexintThe visible-node index.
Returns
- bool
True if the group state changed; otherwise, false.
ToggleSort(GroupGridColumn)
Toggles sorting for a column using the None, Ascending, Descending cycle.
public bool ToggleSort(GroupGridColumn Column)
Parameters
ColumnGroupGridColumnThe column to sort by.
Returns
- bool
True if sorting changed; otherwise, false.
UngroupColumn(GroupGridColumn)
Removes a column from the grouping list.
public bool UngroupColumn(GroupGridColumn Column)
Parameters
ColumnGroupGridColumnThe grid column.
Returns
- bool
True if the column was ungrouped; otherwise, false.
Events
BeginningEdit
Occurs before cell editing begins. Set Cancel to true to stop editing.
public event EventHandler<GroupGridCellEditEventArgs> BeginningEdit
Event Type
CellPointerPressed
Occurs when a pointer press targets a data body cell.
public event EventHandler<GroupGridCellPointerEventArgs> CellPointerPressed
Event Type
CellValidating
Occurs before an edited value is committed. Set Cancel to true to keep editing active.
public event EventHandler<GroupGridCellEditEventArgs> CellValidating
Event Type
CellValueCommitted
Occurs after the edited value is written to the adapter.
public event EventHandler<GroupGridCellEditEventArgs> CellValueCommitted
Event Type
CellValueCommitting
Occurs after validation and before the edited value is written to the adapter.
public event EventHandler<GroupGridCellEditEventArgs> CellValueCommitting
Event Type
ColumnManagerRequested
Occurs when the column manager menu item is clicked.
public event EventHandler ColumnManagerRequested
Event Type
CreateInplaceEditor
Occurs when the grid needs an in-place editor for a cell.
public event EventHandler<GroupGridCreateInplaceEditorEventArgs> CreateInplaceEditor
Event Type
CurrentRowChanged
Occurs when the current adapter row changes.
public event EventHandler CurrentRowChanged
Event Type
DateNormalize
Occurs when the grid needs to normalize date editor text before committing a value.
public event EventHandler<GroupGridDateNormalizeEventArgs> DateNormalize
Event Type
DeletingRow
Occurs before a row is deleted. Set Cancel to true to stop the deletion.
public event EventHandler<GroupGridRowOperationEventArgs> DeletingRow
Event Type
EditCanceled
Occurs when cell editing is canceled.
public event EventHandler<GroupGridCellEditEventArgs> EditCanceled
Event Type
EditRequested
Occurs when the edit toolbar command is requested.
public event EventHandler EditRequested
Event Type
InsertingRow
Occurs before a row is inserted.
public event EventHandler<GroupGridRowOperationEventArgs> InsertingRow
Event Type
RowDeleted
Occurs after a row is deleted.
public event EventHandler<GroupGridRowOperationEventArgs> RowDeleted
Event Type
RowInserted
Occurs after a row is inserted.
public event EventHandler<GroupGridRowOperationEventArgs> RowInserted
Event Type
ToolButtonClicked
Occurs when a custom toolbar button is clicked.
public event EventHandler<GroupGridToolButtonEventArgs> ToolButtonClicked