skip navigation
  • Product Bundles

    DevCraft

    All Telerik .NET tools and Kendo UI JavaScript components in one package. Now enhanced with:

    • AI Coding Assistants
    • Embedded Reporting
    • Document Processing Libraries
    • SSO Account Sign-in

    Web

    Kendo UI UI for Angular UI for Vue UI for jQuery KendoReact UI for Blazor UI for ASP.NET Core UI for ASP.NET MVC UI for ASP.NET AJAX

    Mobile

    UI for .NET MAUI

    Document Management

    Telerik Document Processing

    Desktop

    UI for .NET MAUI UI for WinUI UI for WinForms UI for WPF

    Reporting

    Telerik Reporting Telerik Report Server

    Testing & Mocking

    Test Studio Telerik JustMock

    CMS

    Sitefinity

    AI Productivity Tools

    AI Coding Assistants

    UI/UX Tools

    ThemeBuilder Design System Kit Templates and Building Blocks

    Debugging

    Fiddler Fiddler Everywhere Fiddler Classic Fiddler Everywhere Reporter FiddlerCore

    Free Tools

    KendoReact Free VB.NET to C# Converter Testing Framework
    View all products
  • Overview
  • Demos
    • What's New
    • Roadmap
    • Release History
  • Support and Learning

    • Support and Learning Hub
    • First Steps
    • Docs
    • Demos
    • Virtual Classroom
    • Forums
    • Videos
    • Blogs
    • Accessibility
    • Submit a Ticket

    Productivity and Design Tools

    • Visual Studio Extensions
    • Visual Studio Templates
    • Embedded Reporting
  • Pricing
  • Shopping cart
    • Account Overview
    • Your Licenses
    • Downloads
    • Support Center
    • Forum Profile
    • Payment Methods
    • Edit Profile
    • Log out
  • Login
  • Contact Us
  • Try now

Class RadVirtualGrid

Represents a complex virtual grid control that allows displaying and editing tabular data from any kind of data source, providing advanced features such as sorting, filtering, hierarchical data display, and virtual scrolling for optimal performance with large datasets.

Inheritance
System.Object
RadControl
RadVirtualGrid
Inherited Members
RadControl.isResizing2
RadControl.isDisposing2
RadControl.invalidResizeRect
RadControl.isAccessibilityRequested
RadControl.Dispose(Boolean)
RadControl.Construct()
RadControl.CreateBehavior()
RadControl.CreateRootElement()
RadControl.InitializeRootElement(RootRadElement)
RadControl.LoadElementTree()
RadControl.LoadElementTree(Size)
RadControl.SetIsInitializing(Boolean)
RadControl.ShouldSerializeBackColor()
RadControl.SetBackColorThemeOverrides()
RadControl.ResetBackColorThemeOverrides()
RadControl.ShouldSerializeForeColor()
RadControl.SetForeColorThemeOverrides()
RadControl.ResetForeColorThemeOverrides()
RadControl.ShouldSerializeFont()
RadControl.OnPreviewKeyDown(PreviewKeyDownEventArgs)
RadControl.OnClick(EventArgs)
RadControl.OnDoubleClick(EventArgs)
RadControl.OnMouseEnter(EventArgs)
RadControl.OnMouseLeave(EventArgs)
RadControl.OnMouseHover(EventArgs)
RadControl.OnMouseCaptureChanged(EventArgs)
RadControl.OnGotFocus(EventArgs)
RadControl.OnLostFocus(EventArgs)
RadControl.OnCreateControl()
RadControl.OnHandleDestroyed(EventArgs)
RadControl.OnParentChanged(EventArgs)
RadControl.OnVisibleChanged(EventArgs)
RadControl.OnFontChanged(EventArgs)
RadControl.OnForeColorChanged(EventArgs)
RadControl.OnBackColorChanged(EventArgs)
RadControl.OnEnabledChanged(EventArgs)
RadControl.OnBindingContextChanged(EventArgs)
RadControl.OnLocationChanged(EventArgs)
RadControl.OnPaddingChanged(EventArgs)
RadControl.OnRightToLeftChanged(EventArgs)
RadControl.OnPaint(PaintEventArgs)
RadControl.OnAutoSizeChanged(EventArgs)
RadControl.WndProc(Message)
RadControl.OnInvalidated(RadElement)
RadControl.OnLoad(Size)
RadControl.OnCaptureLosing()
RadControl.OnThemeChanged()
RadControl.OnToolTipTextNeeded(Object, ToolTipTextNeededEventArgs)
RadControl.OnScreenTipNeeded(Object, ScreenTipNeededEventArgs)
RadControl.OnThemeNameChanged(ThemeNameChangedEventArgs)
RadControl.ProcessMnemonic(Char)
RadControl.ProcessFocusRequested(RadElement)
RadControl.ProcessCaptureChangeRequested(RadElement, Boolean)
RadControl.ProcessAutoSizeChanged(Boolean)
RadControl.CallOnMouseCaptureChanged(EventArgs)
RadControl.CallBaseOnGotFocus(EventArgs)
RadControl.CallBaseOnLostFocus(EventArgs)
RadControl.CallOnToolTipTextNeeded(Object, ToolTipTextNeededEventArgs)
RadControl.CallOnScreenTipNeeded(Object, ScreenTipNeededEventArgs)
RadControl.CallOnMouseUp(MouseEventArgs)
RadControl.CallOnMouseDown(MouseEventArgs)
RadControl.CallOnClick(EventArgs)
RadControl.CallOnDoubleClick(EventArgs)
RadControl.CallOnMouseEnter(EventArgs)
RadControl.CallOnMouseWheel(MouseEventArgs)
RadControl.CallOnMouseLeave(EventArgs)
RadControl.CallOnMouseMove(MouseEventArgs)
RadControl.CallOnMouseHover(EventArgs)
RadControl.CallOnPreviewKeyDown(PreviewKeyDownEventArgs)
RadControl.CallBaseOnKeyDown(KeyEventArgs)
RadControl.CallOnKeyDown(KeyEventArgs)
RadControl.CallBaseOnKeyPress(KeyPressEventArgs)
RadControl.CallOnKeyPress(KeyPressEventArgs)
RadControl.GetInputElement()
RadControl.CallBaseOnKeyUp(KeyEventArgs)
RadControl.CallOnKeyUp(KeyEventArgs)
RadControl.CallOnThemeNameChanged(ThemeNameChangedEventArgs)
RadControl.CallOnVisibleChanged(EventArgs)
RadControl.BeginInit()
RadControl.EndInit()
RadControl.OnNotifyPropertyChanged(String)
RadControl.OnNotifyPropertyChanged(PropertyChangedEventArgs)
RadControl.IComponentTreeHandler.GetShowFocusCues()
RadControl.IComponentTreeHandler.CreateRootElement()
RadControl.IComponentTreeHandler.CreateChildItems(RadElement)
RadControl.IComponentTreeHandler.InitializeRootElement(RootRadElement)
RadControl.IComponentTreeHandler.InvalidateElement(RadElement)
RadControl.IComponentTreeHandler.InvalidateElement(RadElement, Rectangle)
RadControl.IComponentTreeHandler.InvalidateIfNotSuspended()
RadControl.IComponentTreeHandler.GetAmbientPropertyValue(RadProperty)
RadControl.IComponentTreeHandler.ControlThemeChangedCallback()
RadControl.IComponentTreeHandler.OnAmbientPropertyChanged(RadProperty)
RadControl.IComponentTreeHandler.OnFocusRequested(RadElement)
RadControl.IComponentTreeHandler.OnCaptureChangeRequested(RadElement, Boolean)
RadControl.IComponentTreeHandler.OnDisplayPropertyChanged(RadPropertyChangedEventArgs)
RadControl.IComponentTreeHandler.CallOnThemeNameChanged(ThemeNameChangedEventArgs)
RadControl.IComponentTreeHandler.CallOnMouseCaptureChanged(EventArgs)
RadControl.IComponentTreeHandler.CallOnToolTipTextNeeded(Object, ToolTipTextNeededEventArgs)
RadControl.IComponentTreeHandler.CallOnScreenTipNeeded(Object, ScreenTipNeededEventArgs)
RadControl.GetPreferredSize(Size)
RadControl.SetBoundsCore(Int32, Int32, Int32, Int32, BoundsSpecified)
RadControl.GetRootElementDesiredSize(Int32, Int32, Int32, Int32)
RadControl.OnZoomGesture(ZoomGestureEventArgs)
RadControl.OnRotateGesture(RotateGestureEventArgs)
RadControl.OnPanGesture(PanGestureEventArgs)
RadControl.OnTwoFingerTapGesture(GestureEventArgs)
RadControl.OnPressAndTapGesture(PressAndTapGestureEventArgs)
RadControl.OnGesture(GestureEventArgs)
RadControl.ProcessGesture(Message)
RadControl.EnableGesture(GestureType)
RadControl.DisableGesture(GestureType)
RadControl.Refresh()
RadControl.SuspendUpdate()
RadControl.ResumeUpdate()
RadControl.ResumeUpdate(Boolean)
RadControl.InvokeLayoutCallback(LayoutCallback)
RadControl.RegisterHostedControl(RadHostItem)
RadControl.UnregisterHostedControl(RadHostItem, Boolean)
RadControl.ControlDefinesThemeForElement(RadElement)
RadControl.ResolveStyleGroupForElement(StyleGroup, RadObject)
RadControl.GetPlainText()
RadControl.CanEditUIElement(RadElement)
RadControl.GetChildAt(Int32)
RadControl.ShouldSerializeProperty(RadProperty)
RadControl.ShouldSerializeProperty(RadProperty, RadObject)
RadControl.ResetProperty(RadProperty, RadObject)
RadControl.CanEditElementAtDesignTime(RadElement)
RadControl.GetControlDefaultSize()
RadControl.GetDpiScaledSize(Size)
RadControl.GetDpiScaledSize(SizeF)
RadControl.ProcessCodedUIMessage(IPCMessage)
RadControl.FindPropertyInChildren(RadControl, IPCMessage)
RadControl.CallAccessibilityNotifyClients(AccessibleEvents, Int32)
RadControl.IPCHost.ProcessMessage(IPCMessage)
RadControl.ScaleControl(SizeF, BoundsSpecified)
RadControl.PerformRadAutoScale(Nullable<BoundsSpecified>)
RadControl.SetRadAutoScale(Boolean)
RadControl.IComponentTreeHandler.get_Name()
RadControl.IComponentTreeHandler.set_Name(String)
RadControl.EnableDpiScaling
RadControl.EnableRadAutoScale
RadControl.EnableRadFormInitialDpiScaling
RadControl.EnableImageDpiScaling
RadControl.EnableSvgImages
RadControl.IsTrial
RadControl.IsLoaded
RadControl.LayoutManager
RadControl.ElementTree
RadControl.UseCompatibleTextRenderingDefaultValue
RadControl.Behavior
RadControl.RootElement
RadControl.Padding
RadControl.ThemeName
RadControl.EnableTheming
RadControl.ThemeClassName
RadControl.ImageList
RadControl.ImageScalingSize
RadControl.UseCompatibleTextRendering
RadControl.AutoSize
RadControl.MaximumSize
RadControl.MinimumSize
RadControl.Focusable
RadControl.Site
RadControl.CausesValidation
RadControl.IsInitializing
RadControl.SmallImageList
RadControl.SmallImageScalingSize
RadControl.IsDesignMode
RadControl.IsDisplayed
RadControl.FocusedElement
RadControl.AllowShowFocusCues
RadControl.ShowItemToolTips
RadControl.CommandBindings
RadControl.EnableKeyMap
RadControl.Font
RadControl.ValidationCancel
RadControl.IComponentTreeHandler.IsDesignMode
RadControl.IComponentTreeHandler.ElementTree
RadControl.IComponentTreeHandler.Behavior
RadControl.IComponentTreeHandler.Initializing
RadControl.IComponentTreeHandler.ThemeClassName
RadControl.EnableGestures
RadControl.EnableAnalytics
RadControl.AnalyticsName
RadControl.EnableRadAccessibilityObjects
RadControl.AccessibilityRequested
RadControl.EnableCodedUITests
RadControl.EnableCodedUITestsDefaultValue
RadControl.EnableUIAutomation
RadControl.EnableUIAutomationDefaultValue
RadControl.IPCHost.Context
RadControl.ElementInvalidated
RadControl.ToolTipTextNeeded
RadControl.ScreenTipNeeded
RadControl.ThemeNameChanged
RadControl.Initialized
RadControl.PropertyChanged
RadControl.ZoomGesture
RadControl.RotateGesture
RadControl.PanGesture
RadControl.TwoFingerTapGesture
RadControl.PressAndTapGesture
Namespace: Telerik.WinControls.UI
Assembly: Telerik.WinControls.GridView.dll

Syntax

[TelerikToolboxCategory("Data Controls")]
public class RadVirtualGrid : RadControl, INotifyPropertyChanged, ISupportInitializeNotification, ISupportInitialize, IComponentTreeHandler, ILayoutHandler, IPCHost, IAnalyticsProvider

Constructors

RadVirtualGrid()

Declaration
public RadVirtualGrid()

Fields

FilterRowIndex

Represents the constant value for the filter row index.

Declaration
public const int FilterRowIndex = -3
Field Value
System.Int32

HeaderRowIndex

Represents the constant value for the header row index.

Declaration
public const int HeaderRowIndex = -1
Field Value
System.Int32

IndentCellIndex

Represents the constant value for the indent cell index.

Declaration
public const int IndentCellIndex = -1
Field Value
System.Int32

NewRowIndex

Represents the constant value for the new row index.

Declaration
public const int NewRowIndex = -2
Field Value
System.Int32

Properties

ActiveEditor

Gets the currently active cell editor when the grid is in edit mode, providing access to the input control being used for editing.

Declaration
public IInputEditor ActiveEditor { get; }
Property Value
IInputEditor

AllowAddNewRow

Gets or sets a value indicating whether the add new row for inserting new records is visible at the bottom of the grid.

Declaration
public bool AllowAddNewRow { get; set; }
Property Value
System.Boolean

AllowCellContextMenu

Gets or sets a value indicating whether right-clicking on a data cell displays the default data cell context menu with cut, copy, paste, and other options.

Declaration
public bool AllowCellContextMenu { get; set; }
Property Value
System.Boolean

AllowColumnHeaderContextMenu

Gets or sets a value indicating whether right-clicking on a header cell displays the default header cell context menu with sorting and filtering options.

Declaration
public bool AllowColumnHeaderContextMenu { get; set; }
Property Value
System.Boolean

AllowColumnResize

Gets or sets a value indicating whether users can resize columns through the grid user interface by dragging the column borders.

Declaration
public bool AllowColumnResize { get; set; }
Property Value
System.Boolean

AllowCopy

Gets or sets a value indicating whether the Copy option in the context menu and the Ctrl+C keyboard shortcut are available to users for copying cell content.

Declaration
public bool AllowCopy { get; set; }
Property Value
System.Boolean

AllowCut

Gets or sets a value indicating whether the Cut option in the context menu and the Ctrl+X keyboard shortcut are available to users for cutting cell content.

Declaration
public bool AllowCut { get; set; }
Property Value
System.Boolean

AllowDelete

Gets or sets a value indicating whether users can delete rows using the Delete key or through the context menu.

Declaration
public bool AllowDelete { get; set; }
Property Value
System.Boolean

AllowEdit

Gets or sets a value indicating whether users can edit the values in data cells by double-clicking or pressing F2.

Declaration
public bool AllowEdit { get; set; }
Property Value
System.Boolean

AllowFiltering

Gets or sets a value indicating whether the filter row for column-based filtering is visible below the header row.

Declaration
public bool AllowFiltering { get; set; }
Property Value
System.Boolean

AllowMultiColumnSorting

Gets or sets a value indicating whether users can sort by multiple columns simultaneously to create complex sorting scenarios.

Declaration
public bool AllowMultiColumnSorting { get; set; }
Property Value
System.Boolean

AllowPaste

Gets or sets a value indicating whether the Paste option in the context menu and the Ctrl+V keyboard shortcut are available to users for pasting cell content.

Declaration
public bool AllowPaste { get; set; }
Property Value
System.Boolean

AllowRowResize

Gets or sets a value indicating whether users can resize rows through the grid user interface by dragging the row borders.

Declaration
public bool AllowRowResize { get; set; }
Property Value
System.Boolean

AllowSorting

Gets or sets a value indicating whether users can sort columns by clicking the column header or through the header context menu.

Declaration
public bool AllowSorting { get; set; }
Property Value
System.Boolean

AutoSizeColumnsMode

Gets or sets a value indicating how column widths are automatically determined, such as fitting to content, filling available space, or using fixed widths.

Declaration
public VirtualGridAutoSizeColumnsMode AutoSizeColumnsMode { get; set; }
Property Value
VirtualGridAutoSizeColumnsMode

BackColor

This property is not relevant for this class.

Declaration
public override Color BackColor { get; set; }
Property Value
System.Drawing.Color

Overrides
RadControl.BackColor

BeginEditMode

Gets or sets the method for entering edit mode, determining how users can start editing a cell (keystroke, F2, double-click, etc.).

Declaration
public RadVirtualGridBeginEditMode BeginEditMode { get; set; }
Property Value
RadVirtualGridBeginEditMode

ColumnCount

Gets or sets the total number of columns to be displayed in the grid, which determines the grid's horizontal structure.

Declaration
public int ColumnCount { get; set; }
Property Value
System.Int32

CurrentCell

Gets or sets the currently active cell in the grid, which is the cell that has focus and can be edited.

Declaration
public VirtualGridCellInfo CurrentCell { get; set; }
Property Value
VirtualGridCellInfo

DefaultSize

Gets the default size of the control when no explicit size is specified.

Declaration
protected override Size DefaultSize { get; }
Property Value
System.Drawing.Size

The default System.Drawing.Size of the control with width 240 and height 150.

EnableAlternatingRowColor

Gets or sets a value indicating whether even and odd rows display with different background colors to improve data readability.

Declaration
public bool EnableAlternatingRowColor { get; set; }
Property Value
System.Boolean

EnableHotTracking

Gets or sets a value indicating whether there is a visual indication, such as highlighting, for the row currently under the mouse cursor.

Declaration
public bool EnableHotTracking { get; set; }
Property Value
System.Boolean

EnablePaging

Gets or sets a value indicating whether data is presented in chunks or pages to the user, which improves performance with large datasets.

Declaration
public bool EnablePaging { get; set; }
Property Value
System.Boolean

EnterKeyMode

Gets or sets the behavior of the Enter key when pressed while in edit mode, such as moving to the next cell or ending the edit operation.

Declaration
public RadVirtualGridEnterKeyMode EnterKeyMode { get; set; }
Property Value
RadVirtualGridEnterKeyMode

FilterDescriptors

Gets the collection of filter descriptors currently applied to the grid, which define the filtering criteria for data display.

Declaration
public FilterDescriptorCollection FilterDescriptors { get; }
Property Value
FilterDescriptorCollection

ForeColor

This property is not relevant for this class.

Declaration
public override Color ForeColor { get; set; }
Property Value
System.Drawing.Color

Overrides
RadControl.ForeColor

IsInEditMode

Gets a value indicating whether the grid is currently in edit mode with an active cell editor.

Declaration
public bool IsInEditMode { get; }
Property Value
System.Boolean

MasterViewInfo

Gets the main VirtualGridViewInfo instance that contains the primary data view configuration and settings for the grid.

Declaration
public VirtualGridViewInfo MasterViewInfo { get; }
Property Value
VirtualGridViewInfo

MultiSelect

Gets or sets a value indicating whether multiple cells, rows, or columns can be selected simultaneously using Ctrl+Click or Shift+Click combinations.

Declaration
public bool MultiSelect { get; set; }
Property Value
System.Boolean

PageIndex

Gets or sets the zero-based index of the page currently displayed in the grid when paging is enabled.

Declaration
public int PageIndex { get; set; }
Property Value
System.Int32

PageSize

Gets or sets the number of rows displayed per page when paging is enabled, which determines how many records are visible at once.

Declaration
public int PageSize { get; set; }
Property Value
System.Int32

RowCount

Gets or sets the total number of data rows to be displayed in the grid, which is used for virtual scrolling and paging calculations.

Declaration
public int RowCount { get; set; }
Property Value
System.Int32

Selection

Gets a VirtualGridSelection object that provides a comprehensive API for programmatically manipulating cell and row selection in the grid.

Declaration
public VirtualGridSelection Selection { get; }
Property Value
VirtualGridSelection

SelectionMode

Gets or sets a value indicating how cells are selected in the grid, either individual cells, entire rows, or entire columns.

Declaration
public VirtualGridSelectionMode SelectionMode { get; set; }
Property Value
VirtualGridSelectionMode

ShowHeaderRow

Gets or sets a value indicating whether the header row containing column headers is visible in the grid.

Declaration
public bool ShowHeaderRow { get; set; }
Property Value
System.Boolean

ShowNoDataText

Gets or sets a value indicating whether a "No data to display" message is shown in the grid when no data is loaded or all data is filtered out.

Declaration
public bool ShowNoDataText { get; set; }
Property Value
System.Boolean

SortDescriptors

Gets the collection of sort descriptors currently applied to the grid, which define the sorting criteria for data display.

Declaration
public SortDescriptorCollection SortDescriptors { get; }
Property Value
SortDescriptorCollection

StandardTab

Gets or sets a value indicating whether the TAB key moves focus to the next control in the tab order rather than navigating to the next cell within the grid.

Declaration
public bool StandardTab { get; set; }
Property Value
System.Boolean

TableElement

Gets an instance of VirtualGridTableElement that contains and manages all the row and column visual elements in the grid.

Declaration
public VirtualGridTableElement TableElement { get; }
Property Value
VirtualGridTableElement

Text

This property is not relevant for this class.

Declaration
public override string Text { get; set; }
Property Value
System.String

Overrides
RadControl.Text

TotalPages

Gets the total number of pages available when paging is enabled, calculated based on the total row count and page size.

Declaration
public int TotalPages { get; }
Property Value
System.Int32

UseScrollbarsInHierarchy

Gets or sets a value indicating whether child views in hierarchical data display have fixed size or dynamically adjust based on the number of rows they contain.

Declaration
public bool UseScrollbarsInHierarchy { get; set; }
Property Value
System.Boolean

VirtualGridElement

Gets the instance of RadVirtualGridElement that represents the main element in the element tree and encapsulates the core functionality of RadVirtualGrid.

Declaration
public RadVirtualGridElement VirtualGridElement { get; }
Property Value
RadVirtualGridElement

XmlSerializationInfo

Gets or sets the serialization information for RadVirtualGrid used by Save/Load layout methods to persist grid settings to and from XML format. When set to null, the default serialization info from GetDefaultXmlSerializationInfo() is used.

Declaration
public ComponentXmlSerializationInfo XmlSerializationInfo { get; set; }
Property Value
ComponentXmlSerializationInfo

Methods

BeginEdit()

Initiates the editing process for the currently selected cell, making it available for user input.

Declaration
public void BeginEdit()

BeginUpdate()

Suspends layout updates for the virtual grid to improve performance during bulk operations and prevent unnecessary redraws.

Declaration
public void BeginUpdate()

BestFitColumns()

Automatically adjusts the width of all columns in the master view to fit their content, expanding or shrinking columns based on the space required by the text in the cells.

Declaration
public void BestFitColumns()

BestFitColumns(VirtualGridViewInfo)

Automatically adjusts the width of all columns in the specified view to fit their content, expanding or shrinking columns based on the space required by the text in the cells.

Declaration
public void BestFitColumns(VirtualGridViewInfo viewInfo)
Parameters
VirtualGridViewInfo viewInfo

The VirtualGridViewInfo containing the columns to resize.

CancelEdit()

Cancels the editing process without committing any changes, reverting the cell value to its original state.

Declaration
public bool CancelEdit()
Returns
System.Boolean

True if the operation is successful and edit mode is exited; false if the operation fails or if the grid was not in edit mode.

CreateChildItems(RadElement)

Creates and initializes the child elements of the virtual grid control by adding the main grid element to the parent element.

Declaration
protected override void CreateChildItems(RadElement parent)
Parameters
RadElement parent

The parent RadElement that will contain the child elements.

Overrides
RadControl.CreateChildItems(RadElement)

CreateElement()

Creates and returns a new instance of RadVirtualGridElement that serves as the main element for this control.

Declaration
protected virtual RadVirtualGridElement CreateElement()
Returns
RadVirtualGridElement

A new RadVirtualGridElement instance.

EndEdit()

Ends the editing process and attempts to commit any changes made to the cell value, applying validation if necessary.

Declaration
public bool EndEdit()
Returns
System.Boolean

True if the operation is successful and changes are committed; false if the operation fails due to validation errors or if the grid was not in edit mode.

EndUpdate()

Resumes layout updates for the virtual grid and triggers any pending layout operations that were deferred during the update suspension.

Declaration
public void EndUpdate()

GetDefaultXmlSerializationInfo()

Gets the default serialization information for RadVirtualGrid used by Save/Load layout methods to persist grid settings to and from XML format.

Declaration
public virtual ComponentXmlSerializationInfo GetDefaultXmlSerializationInfo()
Returns
ComponentXmlSerializationInfo

A ComponentXmlSerializationInfo object containing the default serialization metadata for grid layout persistence.

IsInputKey(Keys)

Determines whether the specified key combination represents an input key that should be processed by the grid for navigation and editing operations.

Declaration
protected override bool IsInputKey(Keys keyData)
Parameters
System.Windows.Forms.Keys keyData

One of the System.Windows.Forms.Keys values that represents the key to evaluate.

Returns
System.Boolean

True if the key is an input key that should be processed by the grid; otherwise, false.

Overrides
RadControl.IsInputKey(Keys)

LoadLayout(Stream)

Loads RadVirtualGrid layout configuration including properties and sub-objects from an XML stream using the serialization information from XmlSerializationInfo.

Declaration
public virtual void LoadLayout(Stream stream)
Parameters
System.IO.Stream stream

The System.IO.Stream containing the XML layout data to load.

LoadLayout(String)

Loads RadVirtualGrid layout configuration including properties and sub-objects from an XML file using the specified file path and the serialization information from XmlSerializationInfo.

Declaration
public virtual void LoadLayout(string fileName)
Parameters
System.String fileName

The full path of the file to load the grid layout from.

LoadLayout(XmlReader)

Loads RadVirtualGrid layout configuration including properties and sub-objects from XML data using the specified XML reader and the serialization information from XmlSerializationInfo.

Declaration
public virtual void LoadLayout(XmlReader xmlReader)
Parameters
System.Xml.XmlReader xmlReader

The System.Xml.XmlReader containing the XML layout data to load.

OnKeyDown(KeyEventArgs)

Raises the System.Windows.Forms.Control.KeyDown event and handles keyboard input for cell navigation, editing operations, and special key combinations.

Declaration
protected override void OnKeyDown(KeyEventArgs e)
Parameters
System.Windows.Forms.KeyEventArgs e

A System.Windows.Forms.KeyEventArgs that contains the event data including key code and modifier state.

Overrides
RadControl.OnKeyDown(KeyEventArgs)

OnKeyPress(KeyPressEventArgs)

Raises the System.Windows.Forms.Control.KeyPress event and handles character input for cell editing and data entry operations.

Declaration
protected override void OnKeyPress(KeyPressEventArgs e)
Parameters
System.Windows.Forms.KeyPressEventArgs e

A System.Windows.Forms.KeyPressEventArgs that contains the event data including the character pressed.

Overrides
RadControl.OnKeyPress(KeyPressEventArgs)

OnKeyUp(KeyEventArgs)

Raises the System.Windows.Forms.Control.KeyUp event and handles keyboard input release, managing navigation between cells when editing with text box editors.

Declaration
protected override void OnKeyUp(KeyEventArgs e)
Parameters
System.Windows.Forms.KeyEventArgs e

A System.Windows.Forms.KeyEventArgs that contains the event data including key code and modifier state.

Overrides
RadControl.OnKeyUp(KeyEventArgs)

OnLayout(LayoutEventArgs)

Raises the System.Windows.Forms.Control.Layout event and synchronizes the grid rows to ensure proper visual layout.

Declaration
protected override void OnLayout(LayoutEventArgs e)
Parameters
System.Windows.Forms.LayoutEventArgs e

A System.Windows.Forms.LayoutEventArgs that contains the event data.

Overrides
RadControl.OnLayout(LayoutEventArgs)

OnLayoutLoaded(Object, LayoutLoadedEventArgs)

Raises the LayoutLoaded event when the grid layout has been successfully loaded from XML data.

Declaration
protected void OnLayoutLoaded(object sender, LayoutLoadedEventArgs e)
Parameters
System.Object sender

The source of the event, typically the RadVirtualGrid instance.

LayoutLoadedEventArgs e

A LayoutLoadedEventArgs that contains the event data.

OnMouseClick(MouseEventArgs)

Raises the System.Windows.Forms.Control.MouseClick event and handles single-click interactions with cells, triggering the CellClick event for valid cell clicks.

Declaration
protected override void OnMouseClick(MouseEventArgs e)
Parameters
System.Windows.Forms.MouseEventArgs e

A System.Windows.Forms.MouseEventArgs that contains the event data including button, location, and click information.

OnMouseDoubleClick(MouseEventArgs)

Raises the System.Windows.Forms.Control.MouseDoubleClick event and handles double-click interactions with cells, potentially triggering cell-specific actions.

Declaration
protected override void OnMouseDoubleClick(MouseEventArgs e)
Parameters
System.Windows.Forms.MouseEventArgs e

A System.Windows.Forms.MouseEventArgs that contains the event data including button, location, and click information.

OnMouseDown(MouseEventArgs)

Raises the System.Windows.Forms.Control.MouseDown event and handles mouse down interactions with the grid, recording the mouse down location for click detection.

Declaration
protected override void OnMouseDown(MouseEventArgs e)
Parameters
System.Windows.Forms.MouseEventArgs e

A System.Windows.Forms.MouseEventArgs that contains the event data including button, location, and click information.

Overrides
RadControl.OnMouseDown(MouseEventArgs)

OnMouseMove(MouseEventArgs)

Raises the System.Windows.Forms.Control.MouseMove event and handles mouse movement over the grid for tracking, selection, and resize operations.

Declaration
protected override void OnMouseMove(MouseEventArgs e)
Parameters
System.Windows.Forms.MouseEventArgs e

A System.Windows.Forms.MouseEventArgs that contains the event data including button state and location information.

Overrides
RadControl.OnMouseMove(MouseEventArgs)

OnMouseUp(MouseEventArgs)

Raises the System.Windows.Forms.Control.MouseUp event and handles mouse button release interactions with the grid.

Declaration
protected override void OnMouseUp(MouseEventArgs e)
Parameters
System.Windows.Forms.MouseEventArgs e

A System.Windows.Forms.MouseEventArgs that contains the event data including button, location, and click information.

Overrides
RadControl.OnMouseUp(MouseEventArgs)

OnMouseWheel(MouseEventArgs)

Raises the System.Windows.Forms.Control.MouseWheel event and handles mouse wheel scrolling for vertical navigation through the grid.

Declaration
protected override void OnMouseWheel(MouseEventArgs e)
Parameters
System.Windows.Forms.MouseEventArgs e

A System.Windows.Forms.MouseEventArgs that contains the event data including wheel delta and location information.

Overrides
RadControl.OnMouseWheel(MouseEventArgs)

OnValidating(CancelEventArgs)

Raises the System.Windows.Forms.Control.Validating event and performs validation of the current cell and row if the grid is in edit mode.

Declaration
protected override void OnValidating(CancelEventArgs e)
Parameters
System.ComponentModel.CancelEventArgs e

A System.ComponentModel.CancelEventArgs that contains the event data and allows cancellation of the validation.

ProcessDialogKey(Keys)

Processes dialog keys such as Tab and Escape, handling cell navigation and edit mode operations according to the grid's input behavior settings.

Declaration
protected override bool ProcessDialogKey(Keys keyData)
Parameters
System.Windows.Forms.Keys keyData

One of the System.Windows.Forms.Keys values that represents the key to process.

Returns
System.Boolean

True if the key was processed by the control; otherwise, false.

SaveLayout(Stream)

Saves the current RadVirtualGrid layout configuration including properties and sub-objects to XML format using the specified stream and the serialization information from XmlSerializationInfo. The stream is left open after the operation.

Declaration
public virtual void SaveLayout(Stream stream)
Parameters
System.IO.Stream stream

The System.IO.Stream to write the serialized grid layout data to.

SaveLayout(String)

Saves the current RadVirtualGrid layout configuration including properties and sub-objects to an XML file using the specified file path and the serialization information from XmlSerializationInfo.

Declaration
public virtual void SaveLayout(string fileName)
Parameters
System.String fileName

The full path of the file to save the grid layout to.

SaveLayout(XmlWriter)

Saves the current RadVirtualGrid layout configuration including properties and sub-objects to XML format using the specified XML writer and the serialization information from XmlSerializationInfo.

Declaration
public virtual void SaveLayout(XmlWriter xmlWriter)
Parameters
System.Xml.XmlWriter xmlWriter

The System.Xml.XmlWriter to use for writing the serialized grid layout data.

SelectAll()

Selects all visible cells in the grid according to the current selection mode and multi-select settings.

Declaration
public void SelectAll()

SelectCell(Int32, Int32)

Selects the cell at the specified row and column indices in the grid master view and clears any previous selection.

Declaration
public void SelectCell(int row, int column)
Parameters
System.Int32 row

The zero-based row index of the cell to select.

System.Int32 column

The zero-based column index of the cell to select.

SelectCell(Int32, Int32, VirtualGridViewInfo)

Selects the cell at the specified row and column indices in the specified view and clears any previous selection.

Declaration
public void SelectCell(int row, int column, VirtualGridViewInfo viewInfo)
Parameters
System.Int32 row

The zero-based row index of the cell to select.

System.Int32 column

The zero-based column index of the cell to select.

VirtualGridViewInfo viewInfo

The VirtualGridViewInfo that contains the target cell.

Events

CellClick

Occurs when a cell is clicked with the mouse, providing information about the clicked cell and mouse event details.

Declaration
public event VirtualGridCellElementEventHandler CellClick
Event Type
VirtualGridCellElementEventHandler

CellDoubleClick

Occurs when a cell is double-clicked with the mouse, typically triggering edit mode or other cell-specific actions.

Declaration
public event EventHandler CellDoubleClick
Event Type
System.EventHandler

CellEditorInitialized

Occurs when the editor for a cell has been initialized and is ready for customization or configuration.

Declaration
public event VirtualGridCellEditorInitializedEventHandler CellEditorInitialized
Event Type
VirtualGridCellEditorInitializedEventHandler

CellFormatting

Occurs when a cell element is created or updated and needs custom formatting or styling applied.

Declaration
public event VirtualGridCellElementEventHandler CellFormatting
Event Type
VirtualGridCellElementEventHandler

CellMouseMove

Occurs when the mouse cursor is moved over a cell, providing continuous feedback about mouse position relative to grid cells.

Declaration
public event VirtualGridCellElementMouseEventHandler CellMouseMove
Event Type
VirtualGridCellElementMouseEventHandler

CellPaint

Occurs after a cell has been painted by the system, allowing custom drawing operations on top of the cell content.

Declaration
public event VirtualGridCellPaintEventHandler CellPaint
Event Type
VirtualGridCellPaintEventHandler

CellValidating

Occurs before a cell value is validated, providing an opportunity to perform custom validation logic and cancel invalid changes.

Declaration
public event VirtualGridCellValidatingEventHandler CellValidating
Event Type
VirtualGridCellValidatingEventHandler

CellValueNeeded

Occurs when a cell is displayed and its content needs to be populated, allowing data binding in virtual mode.

Declaration
public event VirtualGridCellValueNeededEventHandler CellValueNeeded
Event Type
VirtualGridCellValueNeededEventHandler

CellValuePushed

Occurs when a cell value has been edited and needs to be stored back to the data source in virtual mode.

Declaration
public event VirtualGridCellValuePushedEventHandler CellValuePushed
Event Type
VirtualGridCellValuePushedEventHandler

ColumnWidthChanged

Occurs after the width of a column has changed, indicating that the column has been successfully resized.

Declaration
public event VirtualGridColumnEventHandler ColumnWidthChanged
Event Type
VirtualGridColumnEventHandler

ColumnWidthChanging

Occurs before the width of a column changes, providing an opportunity to validate or cancel the resize operation.

Declaration
public event VirtualGridColumnWidthChangingEventHandler ColumnWidthChanging
Event Type
VirtualGridColumnWidthChangingEventHandler

ContextMenuOpening

Occurs when the context menu is about to be opened, allowing customization of menu items or cancellation of the menu display.

Declaration
public event VirtualGridContextMenuOpeningEventHandler ContextMenuOpening
Event Type
VirtualGridContextMenuOpeningEventHandler

Copying

Occurs when cell content is being copied to the clipboard, allowing modification of the copy operation or the content being copied.

Declaration
public event VirtualGridClipboardEventHandler Copying
Event Type
VirtualGridClipboardEventHandler

CreateCellElement

Occurs when a new cell element needs to be created, allowing customization of the cell element type or properties.

Declaration
public event VirtualGridCreateCellEventHandler CreateCellElement
Event Type
VirtualGridCreateCellEventHandler

CreateRowElement

Occurs when a new row element needs to be created, allowing customization of the row element type or properties.

Declaration
public event VirtualGridCreateRowEventHandler CreateRowElement
Event Type
VirtualGridCreateRowEventHandler

CurrentCellChanged

Occurs after the current cell has changed to a different cell, indicating that navigation has completed.

Declaration
public event EventHandler CurrentCellChanged
Event Type
System.EventHandler

CurrentCellChanging

Occurs before the current cell changes to a different cell, providing an opportunity to cancel the navigation.

Declaration
public event VirtualGridCellInfoCancelEventHandler CurrentCellChanging
Event Type
VirtualGridCellInfoCancelEventHandler

EditorRequired

Occurs when an editor is required for a cell, allowing custom editor selection or configuration based on cell content or type.

Declaration
public event VirtualGridEditorRequiredEventHandler EditorRequired
Event Type
VirtualGridEditorRequiredEventHandler

FilterChanged

Occurs when the filter descriptors collection changes, indicating that the filtering criteria have been modified.

Declaration
public event VirtualGridEventHandler FilterChanged
Event Type
VirtualGridEventHandler

LayoutLoaded

Occurs when the grid layout has been successfully loaded from XML, allowing post-load processing and configuration.

Declaration
public event LayoutLoadedEventHandler LayoutLoaded
Event Type
LayoutLoadedEventHandler

PageChanged

Occurs after the current page index has changed when paging is enabled, indicating that a different page is now displayed.

Declaration
public event VirtualGridEventHandler PageChanged
Event Type
VirtualGridEventHandler

PageChanging

Occurs before the current page index changes when paging is enabled, allowing cancellation of the page navigation.

Declaration
public event VirtualGridPageChangingEventHandler PageChanging
Event Type
VirtualGridPageChangingEventHandler

Pasting

Occurs when content is about to be pasted from the clipboard into cells, allowing modification of the paste operation or the content being pasted.

Declaration
public event VirtualGridClipboardEventHandler Pasting
Event Type
VirtualGridClipboardEventHandler

QueryHasChildRows

Occurs when the grid needs to determine whether a row has child rows in hierarchical data scenarios, allowing dynamic hierarchy detection.

Declaration
public event VirtualGridQueryHasChildRowsEventHandler QueryHasChildRows
Event Type
VirtualGridQueryHasChildRowsEventHandler

RowCollapsed

Occurs after a hierarchical row has been successfully collapsed to hide its child rows.

Declaration
public event VirtualGridRowExpandedEventHandler RowCollapsed
Event Type
VirtualGridRowExpandedEventHandler

RowCollapsing

Occurs before a hierarchical row is collapsed to hide its child rows, allowing cancellation of the operation.

Declaration
public event VirtualGridRowExpandingEventHandler RowCollapsing
Event Type
VirtualGridRowExpandingEventHandler

RowExpanded

Occurs after a hierarchical row has been successfully expanded to show its child rows.

Declaration
public event VirtualGridRowExpandedEventHandler RowExpanded
Event Type
VirtualGridRowExpandedEventHandler

RowExpanding

Occurs before a hierarchical row is expanded to show its child rows, allowing cancellation of the operation.

Declaration
public event VirtualGridRowExpandingEventHandler RowExpanding
Event Type
VirtualGridRowExpandingEventHandler

RowFormatting

Occurs when a row element is created or updated and needs custom formatting or styling applied.

Declaration
public event VirtualGridRowElementEventHandler RowFormatting
Event Type
VirtualGridRowElementEventHandler

RowHeightChanged

Occurs after the height of a row has changed, indicating that the row has been successfully resized.

Declaration
public event VirtualGridRowEventHandler RowHeightChanged
Event Type
VirtualGridRowEventHandler

RowHeightChanging

Occurs before the height of a row changes, providing an opportunity to validate or cancel the resize operation.

Declaration
public event VirtualGridRowHeightChangingEventHandler RowHeightChanging
Event Type
VirtualGridRowHeightChangingEventHandler

RowPaint

Occurs after a row has been painted by the system, allowing custom drawing operations on top of the entire row.

Declaration
public event VirtualGridRowPaintEventHandler RowPaint
Event Type
VirtualGridRowPaintEventHandler

RowValidated

Occurs after a row has been successfully validated, indicating that all validation rules have passed.

Declaration
public event VirtualGridRowEventHandler RowValidated
Event Type
VirtualGridRowEventHandler

RowValidating

Occurs before a row is validated, providing an opportunity to perform custom validation logic across multiple cells in the row.

Declaration
public event VirtualGridRowValidatingEventHandler RowValidating
Event Type
VirtualGridRowValidatingEventHandler

SelectionChanged

Occurs after the selection has changed in the grid, indicating that different cells or rows are now selected.

Declaration
public event EventHandler SelectionChanged
Event Type
System.EventHandler

SelectionChanging

Occurs before the selection changes in the grid, providing an opportunity to validate or cancel the selection change.

Declaration
public event VirtualGridSelectionChangingEventHandler SelectionChanging
Event Type
VirtualGridSelectionChangingEventHandler

SortChanged

Occurs when the sort descriptors collection changes, indicating that the sorting criteria have been modified.

Declaration
public event VirtualGridEventHandler SortChanged
Event Type
VirtualGridEventHandler

UserAddedRow

Occurs when a user successfully adds a new row to the grid through the new row interface.

Declaration
public event VirtualGridNewRowEventHandler UserAddedRow
Event Type
VirtualGridNewRowEventHandler

UserDeletedRow

Occurs when a user successfully deletes one or more rows from the grid.

Declaration
public event VirtualGridRowsEventHandler UserDeletedRow
Event Type
VirtualGridRowsEventHandler

ValueChanged

Occurs after the value of a cell has been successfully changed and committed.

Declaration
public event EventHandler ValueChanged
Event Type
System.EventHandler

ValueChanging

Occurs before the value of a cell is changed, providing an opportunity to validate or modify the new value.

Declaration
public event ValueChangingEventHandler ValueChanging
Event Type
ValueChangingEventHandler

ViewInfoPropertyChanged

Occurs when a property of any view info object changes, providing notification of configuration or state changes in the grid views.

Declaration
public event VirtualGridViewInfoPropertyChangedEventHandler ViewInfoPropertyChanged
Event Type
VirtualGridViewInfoPropertyChangedEventHandler

Extension Methods

SvgExtentions.Traverse<T>(T, Func<T, IEnumerable<T>>)
SvgExtentions.TraverseDepthFirst<T>(T, Func<T, IEnumerable<T>>)
Getting Started
  • Install Now
  • Demos
  • Step-by-Step Tutorial
  • Sample Applications
  • SDK Samples
  • Visual Studio Extensions
Support Resources
  • Code Library
  • Knowledge Base
  • Videos
Community
  • Forums
  • Blogs
  • Feedback Portal
  • Document Processing Feedback Portal

Copyright © 2018 Progress Software Corporation and/or its subsidiaries or affiliates.
All Rights Reserved.

Progress, Telerik, and certain product names used herein are trademarks or registered trademarks of Progress Software Corporation and/or one of its subsidiaries or affiliates in the U.S. and/or other countries. See Trademarks for appropriate markings.