Represents the main visual element of RadScheduler when the active view is SchedulerDayView and resource-based grouping is enabled, providing a layout that organizes appointments by resource columns.
Definition
Namespace:Telerik.WinControls.UI
Assembly:Telerik.WinControls.Scheduler.dll
Syntax:
public class SchedulerDayViewGroupedByResourceElement : SchedulerViewGroupedByResourceElement<SchedulerDayViewElement>, INotifyPropertyChanged, ICustomTypeDescriptor, ISupportSystemSkin, IBindableComponent, IComponent, IDisposable, ISupportDrag, ISupportDrop, IShortcutProvider, IStylableElement, IStylableNode, IPrimitiveElement, IShapedElement, IFillElement, IBorderElement, IBoxStyle, IBoxElement, IDrawFillElement, IImageElement, ITextPrimitive, ITextProvider
Inheritance: objectDisposableObjectRadObjectRadElementVisualElementRadComponentElementRadItemUIItemBaseLightVisualElementSchedulerVisualElementSchedulerViewElementSchedulerViewGroupedByResourceElementBaseSchedulerViewGroupedByResourceElement<SchedulerDayViewElement>SchedulerDayViewGroupedByResourceElement...
Implements:
Inherited Members
Constructors
Initializes a new instance of the SchedulerDayViewGroupedByResourceElement class with the specified scheduler control and view configuration, setting up resource-based grouping layout.
public SchedulerDayViewGroupedByResourceElement(RadScheduler scheduler, SchedulerView view)
The RadScheduler control that owns this view element.
viewSchedulerViewThe SchedulerView that this element represents.
Fields
Identifies the AllDayHeaderHeight dependency property.
public static RadProperty HeaderHeightProperty
Properties
Gets or sets the height in pixels of the all-day appointments header section that appears above the time grid in each resource column of the grouped day view.
[Browsable(true)]
public int AllDayHeaderHeight { get; set; }
Gets or sets the height in pixels of the resource header section that displays resource names and allows for resource identification in the grouped layout.
public int ResourceHeaderHeight { get; set; }
Gets the horizontal scrollbar element used for navigating across resource columns when the number of resources exceeds the available display width.
public override RadScrollBarElement ResourceScrollBar { get; }
Overrides:
Methods
Applies visual settings to a child day view element, including background colors and gradient styles based on the associated resource.
protected override void ApplyChildViewVisualSettings(SchedulerDayViewElement dayView)
The SchedulerDayViewElement to apply visual settings to.
Overrides:
Arranges all child elements within the available space, positioning resource columns, separators, headers, and scrollbars according to the resource-grouped layout.
Creates a child view for the specified resource index, configuring it with the appropriate resource assignments and view properties.
protected override SchedulerView CreateChildView(int resourceIndex)
The index of the resource to create a view for.
Returns:A new SchedulerView configured for the specified resource, or null if the resource index is invalid.
Overrides:
Creates a child day view element for the specified resource, configuring it according to the parent view settings and resource-specific properties.
protected override SchedulerDayViewElement CreateChildViewElement(int resourcesStartIndex, int childIndex, SchedulerView childView)
The starting index of resources for this child view.
childIndexintThe index of this child view among all child views.
childViewSchedulerViewThe SchedulerView that this child element will represent.
Returns:A new SchedulerDayViewElement configured for the resource group.
Overrides:
Scrolls the view to ensure the specified appointment element is visible within the current viewport, handling both all-day and timed appointments.
public void EnsureAppointmentVisible(AppointmentElement appointment)
The AppointmentElement to make visible.
Scrolls the view to ensure the specified cell element is visible within the current viewport, adjusting the vertical scroll position as needed.
public void EnsureCellVisible(SchedulerCellElement cell)
The SchedulerCellElement to make visible.
Gets the cell element at the specified grid position within the resource-grouped layout, handling coordinate transformations across resource columns.
public override SchedulerCellElement GetCellAtPosition(int row, int column)
The row index in the layout grid.
columnintThe column index in the layout grid.
Returns:The SchedulerCellElement at the specified position, or null if no cell exists at that position.
Overrides:
Gets the table layout coordinates for the specified cell element within the resource-grouped layout structure.
public override TableLayoutPanelCellPosition GetCellCoordinates(SchedulerCellElement cell)
The SchedulerCellElement to get coordinates for.
Returns:A TableLayoutPanelCellPosition representing the cell's position in the layout grid.
Overrides:
Initializes the default field values and sets the visual properties specific to the resource-grouped day view element.
protected override void InitializeFields()
Overrides:
Initializes the view-specific child elements including corner cells and the horizontal scrollbar for resource navigation.
protected override void InitializeViewSpecificChildren()
Overrides:
Measures the desired size of this element and its children, calculating the space required for the resource-grouped layout including headers and scrollbars.
Navigates to the specified resource index, updating the layout and preserving the current vertical scroll position across resource changes.
public override void NavigateToResource(int index)
The index of the resource to navigate to.
Overrides:
Handles the element loaded event, performing auto-scroll to work hours if enabled in the view configuration.
protected override void OnLoaded()
Overrides:
Handles changes to the scheduler's appointments collection, invalidating the layout to refresh the resource-grouped display.
protected override void OnSchedulerAppointmentsChanged(object sender, NotifyCollectionChangedEventArgs e)
The source of the event.
eNotifyCollectionChangedEventArgsThe NotifyCollectionChangedEventArgs instance containing the event data.
Overrides:
Handles view property changes, responding to specific property modifications like TimeZones and AutoScrollToWorkTime to update the display accordingly.
protected override void OnViewPropertyChanged(object sender, PropertyChangedEventArgs e)
The source of the event.
ePropertyChangedEventArgsThe PropertyChangedEventArgs instance containing the event data.
Overrides:
Refreshes the resource view elements, setting up scroll event handlers and performing initial layout operations for the grouped display.
protected override void RefreshResourceViews()
Overrides:
Scrolls the view vertically by the ruler's separator offset, moving up or down through the time grid.
public override void Scroll(bool up)
True to scroll up, false to scroll down.
Overrides:
Scrolls all resource columns to display the start of the working hours as defined in the view configuration.
public void ScrollToWorkHours()
Synchronizes a child view element with changes from the parent view, updating properties and configurations based on the specified property name.
protected override void SynchronizeChildView(SchedulerDayViewElement element, string propertyName)
The SchedulerDayViewElement to synchronize.
propertyNamestringThe name of the property that changed in the parent view.
Overrides:
Synchronizes the vertical scroll positions and offsets across all child view elements to maintain consistent scrolling behavior in the resource-grouped layout.
public void SyncPositionOffsets()