ClassDetailListViewElement
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.
Definition
Namespace:Telerik.WinControls.UI
Assembly:Telerik.WinControls.UI.dll
Syntax:
public class DetailListViewElement : BaseListViewElement, INotifyPropertyChanged, ICustomTypeDescriptor, ISupportSystemSkin, IBindableComponent, IComponent, IDisposable, ISupportDrag, ISupportDrop, IShortcutProvider, IStylableElement, IStylableNode, IPrimitiveElement, IShapedElement, IFillElement, IBorderElement, IBoxStyle, IBoxElement, IDrawFillElement, IImageElement, ITextPrimitive, ITextProvider
Inheritance: objectDisposableObjectRadObjectRadElementVisualElementRadComponentElementRadItemUIItemBaseLightVisualElementScrollViewElement<VirtualizedStackContainer<ListViewDataItem>>VirtualizedScrollPanel<ListViewDataItem, BaseListViewVisualItem>BaseListViewElementDetailListViewElement
Implements:
Inherited Members
Constructors
DetailListViewElement(RadListViewElement)
Initializes a new instance of the DetailListViewElement class with the specified owner.
Declaration
public DetailListViewElement(RadListViewElement owner)
Parameters
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
Properties
ColumnContainer
Gets the container element that hosts the column header cells in the details view.
Declaration
public DetailListViewColumnContainer ColumnContainer { get; }
Property Value
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
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
[Browsable(false)]
[VsbBrowsable(true)]
public RadImageShape ColumnDragHint { get; set; }
Property Value
ColumnScrollBar
Gets the horizontal scrollbar element used for scrolling columns in the details view.
Declaration
public RadScrollBarElement ColumnScrollBar { get; }
Property Value
ColumnScroller
Gets the scroller component responsible for horizontal scrolling of columns in the details view.
Declaration
public DetailListViewColumnScroller ColumnScroller { get; }
Property Value
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
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
viewElementRect
The view element rectangle to adjust based on scrollbar placement.
clientRect
The client rectangle for layout calculations.
Returns
The 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.
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
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
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
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
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
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
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
location
The location to test for visual item presence.
Returns
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
e
The 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
e
The 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.
OnLassoTimerTick(object, EventArgs)
Handles lasso timer tick events to scroll both vertically and horizontally during lasso selection operations.
OnNotifyPropertyChanged(string)
Handles property change notifications, specifically updating scroll states for horizontal and vertical scrollbars.
Declaration
protected override void OnNotifyPropertyChanged(string propertyName)
Parameters
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
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
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
e
The MouseEventArgs containing mouse event data.
Returns
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
e
The MouseEventArgs containing mouse event data.
Returns
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
orientation
The orientation to check for support.
Returns
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.