blazor-devexpress-dot-blazor-30190a43.md
An appointment’s availability status.
Namespace : DevExpress.Blazor
Assembly : DevExpress.Blazor.v25.2.dll
NuGet Package : DevExpress.Blazor
public class DxSchedulerAppointmentStatusItem :
DxSchedulerSourceObjectContainer
The following members return DxSchedulerAppointmentStatusItem objects:
You can associate a status with an appointment to indicate its availability. The appointment displays its status as a colored strip on the left edge.
When users create or edit an appointment in the Appointment form, they can select the appointment’s status from the drop-down Status list.
The Caption property specifies the status item’s text. The Color or CssClass property defines the status item’s appearance.
Note
When you use templates to customize appointment appearance, the Color and CssClass property values are not applied to appointments. In the template, you can use the context.Status parameter to access these property values.
The Scheduler has a built-in collection of status values:
Do the following to substitute the built-in collection of status values with your own values:
StatusObject) that stores status options and an ID.StatusObject class instances) and define their options.MyCustomField field to the StatusObject and maps this field to the status item’s MyCustomProperty.<DxScheduler StartDate="@DateTime.Today"
DataStorage="@DataStorage">
<DxSchedulerWeekView ShowWorkTimeOnly="true"></DxSchedulerWeekView>
</DxScheduler>
@code {
DxSchedulerDataStorage DataStorage = new DxSchedulerDataStorage() {
// Specify appointment mappings here.
// ...
AppointmentStatusSource = StatusCollection.GetStatuses(),
AppointmentStatusMappings = new DxSchedulerAppointmentStatusMappings() {
Id = "Id",
Caption = "StatusCaption",
Color = "StatusColor",
// Uncomment the line below and comment the line above to specify other style options.
//CssClass = "CssClass",
// Map the source object's custom field to the status item's custom property.
CustomFieldMappings = new List<DxSchedulerCustomFieldMapping> {
new DxSchedulerCustomFieldMapping { Name = "MyCustomProperty", Mapping = "MyCustomField" }
}
}
};
}
.status1-style {
background-color: lightblue;
border-color: blue;
}
.status2-style {
background-color: lightgreen;
border-color: green;
}
public class StatusObject {
public int Id { get; set; }
public string StatusCaption { get; set; }
public System.Drawing.Color StatusColor { get; set; }
public string CssClass { get; set; }
public string MyCustomField { get; set; } // A custom field
}
public static class StatusCollection {
public static List<StatusObject> GetStatuses() {
DateTime date = DateTime.Today;
var dataSource = new List<StatusObject>() {
new StatusObject() {
Id = 1,
StatusCaption = "Resolved",
StatusColor = System.Drawing.Color.LightBlue,
// Uncomment the line below and comment the line above to specify other style options.
//CssClass = "status1-style",
MyCustomField = "Custom text for the 'Resolved' status",
},
new StatusObject() {
Id = 2,
StatusCaption = "In process",
StatusColor = System.Drawing.Color.LightGreen,
// Uncomment the line below and comment the line above to specify other style options.
//CssClass = "status2-style",
MyCustomField = "Custom text for the 'In process' status",
}
};
return dataSource;
}
}
Object DevExpress.Blazor.Scheduler.Internal.NotifyPropertyChangedBase DxSchedulerSourceObjectContainer DxSchedulerAppointmentStatusItem
See Also