DxSchedulerDayViewBase.ResourceHeaderCellTemplate Property
Specifies the template for resource header cells in the Scheduler.
Namespace: DevExpress.Blazor.Base
Assembly: DevExpress.Blazor.v24.1.dll
NuGet Package: DevExpress.Blazor
Declaration
[Parameter]
public RenderFragment<SchedulerResourceHeaderCellInfo> ResourceHeaderCellTemplate { get; set; }
Property Value
Type | Description |
---|---|
RenderFragment<SchedulerResourceHeaderCellInfo> | The resource header cell template. |
Remarks
This template accepts a SchedulerResourceHeaderCellInfo object as the context
parameter. You can use the parameter’s Intervals property to get intervals to which the cell belongs. The parameter’s Resource property specifies the resource associated with the cell or contains an empty resource item if no resource is assigned.
The following example adds images to resource header cells:
<DxScheduler @bind-StartDate="@StartDate"
DataStorage="@DataStorage"
GroupType="@SchedulerGroupType.Resource"
ResourceColorInHeaderVisible="false"
HtmlCellDecoration="OnHtmlCellDecoration"
CssClass="demo-sc-size">
<Views>
<DxSchedulerDayView DayCount="2" ShowWorkTimeOnly="true" CellMinWidth="120">
<ResourceHeaderCellTemplate>
<div class="" style="display: flex; flex-direction: row; align-items: center;">
<img class="card" src="@(StaticAssetUtils.GetImagePath(context.Resource.CustomFields["ImageFileName"].ToString()))"
alt=""
style="object-fit: cover; height: 80px; width: 80px; object-position: 0px 0px; border-radius: 50%;" />
<div style="padding: 0.4725rem;">@context.Resource.Caption</div>
</div>
</ResourceHeaderCellTemplate>
</DxSchedulerDayView>
</Views>
</DxScheduler>
@code {
DateTime StartDate { get; set; } = DateTime.Today;
DxSchedulerDataStorage DataStorage = new DxSchedulerDataStorage() {
AppointmentsSource = ResourceAppointmentCollection.GetAppointments(),
AppointmentMappings = new DxSchedulerAppointmentMappings() {
Type = "AppointmentType",
Start = "StartDate",
End = "EndDate",
Subject = "Caption",
AllDay = "AllDay",
Location = "Location",
Description = "Description",
LabelId = "Label",
StatusId = "Status",
RecurrenceInfo = "Recurrence",
ResourceId = "ResourceId"
},
ResourcesSource = ResourceCollection.GetResourcesForGrouping(),
ResourceMappings = new DxSchedulerResourceMappings() {
Id = "Id",
Caption = "Name",
BackgroundCssClass = "BackgroundCss",
TextCssClass = "TextCss",
CustomFieldMappings = new List<DxSchedulerCustomFieldMapping> {
new DxSchedulerCustomFieldMapping{ Name = "ImageFileName", Mapping = "ImageFileName" }
}
}
};
void OnHtmlCellDecoration(SchedulerHtmlCellDecorationEventArgs args) {
if(args.CellType == SchedulerCellType.ResourceHeader) {
args.CssClass = "card-header";
args.Style = "padding: 0.4725rem;";
}
}
See Also