Class DetailListViewElement
Represents a specialized list view element that displays data in a details view with columns and headers. This element provides column-based data visualization, column scrolling, drag-drop operations, sorting functionality, and best-fit column sizing capabilities for RadListView controls.
Inheritance
Inherited Members
Namespace: Telerik.WinControls.UI
Assembly: Telerik.WinControls.UI.dll
Syntax
public class DetailListViewElement : BaseListViewElement, INotifyPropertyChanged, ICustomTypeDescriptor, ISupportSystemSkin, IComponent, IDisposable, IBindableComponent, ISupportDrag, ISupportDrop, IShortcutProvider, IStylableElement, IStylableNode, IPrimitiveElement, IShapedElement, IFillElement, IBorderElement, IBoxStyle, IBoxElement, IDrawFillElement, IImageElement, ITextPrimitive, ITextProvider
Constructors
DetailListViewElement(RadListViewElement)
Initializes a new instance of the DetailListViewElement class with the specified owner.
Declaration
public DetailListViewElement(RadListViewElement owner)
Parameters
|
RadListViewElement
owner
The RadListViewElement that owns this details view element. |
Fields
ColumnDragHintProperty
Identifies the ColumnDragHint dependency property which defines the visual hint displayed during column drag operations.
Declaration
public static RadProperty ColumnDragHintProperty
Field Value
|
RadProperty
|
Properties
ColumnContainer
Gets the container element that hosts the column header cells in the details view.
Declaration
public DetailListViewColumnContainer ColumnContainer { get; }
Property Value
|
DetailListViewColumnContainer
|
ColumnDragDropService
Gets or sets the drag-drop service that handles column reordering operations within the details view.
Declaration
public DetailListViewDragDropService ColumnDragDropService { get; set; }
Property Value
|
DetailListViewDragDropService
|
ColumnDragHint
Gets or sets the RadImageShape instance that defines the visual hint displayed during column drag operations to indicate where a column will be dropped.
Declaration
[VsbBrowsable(true)]
public RadImageShape ColumnDragHint { get; set; }
Property Value
|
RadImageShape
|
ColumnScrollBar
Gets the horizontal scrollbar element used for scrolling columns in the details view.
Declaration
public RadScrollBarElement ColumnScrollBar { get; }
Property Value
|
RadScrollBarElement
|
ColumnScroller
Gets the scroller component responsible for horizontal scrolling of columns in the details view.
Declaration
public DetailListViewColumnScroller ColumnScroller { get; }
Property Value
|
DetailListViewColumnScroller
|
GroupIndent
Gets or sets the group indentation value for details view. In design mode, returns the base group indent; otherwise, returns 0 as details view does not support group indentation.
Declaration
public override int GroupIndent { get; set; }
Property Value
|
System.Int32
|
Overrides
Methods
ArrangeHScrollBar(ref RectangleF, RectangleF)
Arranges the horizontal scrollbar for column scrolling, adjusting for RTL layout and vertical scrollbar presence.
Declaration
protected override RectangleF ArrangeHScrollBar(ref RectangleF viewElementRect, RectangleF clientRect)
Parameters
|
System.Drawing.RectangleF
viewElementRect
The view element rectangle to adjust based on scrollbar placement. |
|
System.Drawing.RectangleF
clientRect
The client rectangle for layout calculations. |
Returns
|
System.Drawing.RectangleF
The System.Drawing.RectangleF representing the horizontal scrollbar bounds. |
Overrides
ArrangeOverride(SizeF)
Arranges the child elements including column container, view element, and scrollbars within the final size, handling RTL layout and corner cell positioning.
Declaration
protected override SizeF ArrangeOverride(SizeF finalSize)
Parameters
|
System.Drawing.SizeF
finalSize
The final size for arrangement. |
Returns
|
System.Drawing.SizeF
The actual System.Drawing.SizeF used for arrangement. |
Overrides
BestFitColumn(ListViewDetailColumn)
Automatically adjusts the width of the specified column based on the space required by its content and header text.
Declaration
public void BestFitColumn(ListViewDetailColumn column)
Parameters
|
ListViewDetailColumn
column
The ListViewDetailColumn to resize to optimal width. |
BestFitColumns()
Automatically adjusts the width of all columns based on the space required by their content and header text.
Declaration
public void BestFitColumns()
BestFitColumns(ListViewBestFitColumnMode)
Automatically adjusts the width of all columns based on the space required by their content and header text, using the specified best fit mode.
Declaration
public void BestFitColumns(ListViewBestFitColumnMode mode)
Parameters
|
ListViewBestFitColumnMode
mode
The ListViewBestFitColumnMode defining the best fit calculation method. |
CalculateCornerCellWidth()
Calculates the width required for the corner cell area, which accommodates checkboxes and toggle elements.
Declaration
protected virtual float CalculateCornerCellWidth()
Returns
|
System.Single
The calculated width for the corner cell area. |
CanBestFit()
Determines whether this instance can execute a best fit columns operation based on element and owner state.
Declaration
protected virtual bool CanBestFit()
Returns
|
System.Boolean
True if best fit operation can be executed; otherwise, false. |
CreateChildElements()
Creates and configures the child elements including column container, horizontal scrollbar, and column scroller for the details view layout.
Declaration
protected override void CreateChildElements()
Overrides
CreateViewElement()
Creates and returns a specialized view element container for details view layout and item management.
Declaration
protected override VirtualizedStackContainer<ListViewDataItem> CreateViewElement()
Returns
|
VirtualizedStackContainer<ListViewDataItem>
A DetailsListViewContainer instance configured for details view functionality. |
Overrides
EnsureColumnVisible(ListViewDetailColumn)
Ensures the specified column is visible within the column container by scrolling horizontally if necessary.
Declaration
public virtual void EnsureColumnVisible(ListViewDetailColumn column)
Parameters
|
ListViewDetailColumn
column
The ListViewDetailColumn to make visible. |
EnsureColumnVisibleCore(ListViewDetailColumn)
Core implementation for ensuring column visibility by calculating scroll offsets and updating the scrollbar position.
Declaration
protected virtual void EnsureColumnVisibleCore(ListViewDetailColumn column)
Parameters
|
ListViewDetailColumn
column
The ListViewDetailColumn to ensure visibility for. |
GetVisualItemAt(Point)
Gets the visual item at the specified location by traversing the element tree to find the containing visual item.
Declaration
public override BaseListViewVisualItem GetVisualItemAt(Point location)
Parameters
|
System.Drawing.Point
location
The location to test for visual item presence. |
Returns
|
BaseListViewVisualItem
The BaseListViewVisualItem at the specified location, or null if none found. |
Overrides
HandleLeftKey(KeyEventArgs)
Handles left arrow key navigation by moving to the previous column in the column traverser.
Declaration
protected override void HandleLeftKey(KeyEventArgs e)
Parameters
|
System.Windows.Forms.KeyEventArgs
e
The System.Windows.Forms.KeyEventArgs containing key event data. |
Overrides
HandleRightKey(KeyEventArgs)
Handles right arrow key navigation by moving to the next column in the column traverser.
Declaration
protected override void HandleRightKey(KeyEventArgs e)
Parameters
|
System.Windows.Forms.KeyEventArgs
e
The System.Windows.Forms.KeyEventArgs containing key event data. |
Overrides
MeasureOverride(SizeF)
Measures the desired size of the details view element including columns, scrollbars, and view content. Handles auto-sizing modes and corner cell width calculations.
Declaration
protected override SizeF MeasureOverride(SizeF availableSize)
Parameters
|
System.Drawing.SizeF
availableSize
The available size for measurement. |
Returns
|
System.Drawing.SizeF
The desired System.Drawing.SizeF of the details view element. |
Overrides
OnLassoTimerTick(Object, EventArgs)
Handles lasso timer tick events to scroll both vertically and horizontally during lasso selection operations.
Declaration
protected override void OnLassoTimerTick(object sender, EventArgs e)
Parameters
|
System.Object
sender
The event sender. |
|
System.EventArgs
e
The System.EventArgs containing event data. |
Overrides
OnNotifyPropertyChanged(String)
Handles property change notifications, specifically updating scroll states for horizontal and vertical scrollbars.
Declaration
protected override void OnNotifyPropertyChanged(string propertyName)
Parameters
|
System.String
propertyName
The name of the property that changed. |
Overrides
OnPanGesture(PanGestureEventArgs)
Handles pan gesture events for touch scrolling, supporting both vertical and horizontal scrolling within the details view.
Declaration
protected override void OnPanGesture(PanGestureEventArgs args)
Parameters
|
PanGestureEventArgs
args
The PanGestureEventArgs containing gesture data. |
Overrides
ProcessLassoSelection(Rectangle)
Processes lasso selection within the details view, calculating item rectangles and determining selection based on intersection.
Declaration
protected override void ProcessLassoSelection(Rectangle selectionRect)
Parameters
|
System.Drawing.Rectangle
selectionRect
The selection rectangle for lasso operations. |
Overrides
ProcessMouseMove(MouseEventArgs)
Processes mouse move events, handling column resizing cursor changes and column resize operations.
Declaration
protected override bool ProcessMouseMove(MouseEventArgs e)
Parameters
|
System.Windows.Forms.MouseEventArgs
e
The System.Windows.Forms.MouseEventArgs containing mouse event data. |
Returns
|
System.Boolean
True if the mouse event was processed; otherwise, false. |
Overrides
ProcessMouseUp(MouseEventArgs)
Processes mouse up events, handling column sorting, item selection, checkbox toggling, and edit mode initiation.
Declaration
protected override bool ProcessMouseUp(MouseEventArgs e)
Parameters
|
System.Windows.Forms.MouseEventArgs
e
The System.Windows.Forms.MouseEventArgs containing mouse event data. |
Returns
|
System.Boolean
True if the mouse event was processed; otherwise, false. |
Overrides
SupportsOrientation(Orientation)
Determines whether the specified orientation is supported by the details view element. Details view only supports vertical orientation.
Declaration
protected override bool SupportsOrientation(Orientation orientation)
Parameters
|
System.Windows.Forms.Orientation
orientation
The orientation to check for support. |
Returns
|
System.Boolean
True if vertical orientation; otherwise, false. |
Overrides
UpdateOnMeasure(SizeF)
Updates scrollbar visibility and client sizes during measurement, ensuring proper scroll range calculations for both vertical and horizontal scrolling.
Declaration
protected override bool UpdateOnMeasure(SizeF availableSize)
Parameters
|
System.Drawing.SizeF
availableSize
The available size for update calculations. |
Returns
|
System.Boolean
True if scrollbar visibility changed; otherwise, false. |