要更改Blazor Scheduler控件中事件之间的距离,需要使用以下代码段:
@((context.SlotData as MeetingData).Subject)
@code {
public class MeetingData
{
public int Id { get; set; }
public string Subject { get; set; }
public DateTime StartTime { get; set; }
public DateTime EndTime { get; set; }
}
private string GetEventStyle(MeetingData eventData)
{
int totalMinutes = (int)(eventData.EndTime - eventData.StartTime).TotalMinutes;
int topMargin = (int)(eventData.StartTime - eventData.StartTime.Date).TotalMinutes;
int height = (int)(totalMinutes * 2);
return $"top: {topMargin}px; height: {height}px; {GetEventColor(eventData)}";
}
private string GetEventColor(MeetingData eventData)
{
return $"background-color: #0078D6; border-color: #0078D6;";
}
List meetingDataSource = new List()
{
new MeetingData() {Id=1, Subject="Meeting - 1", StartTime = DateTime.ParseExact("2021-07-12T10:00:00Z", "yyyy'-'MM'-'dd'T'HH':'mm':'ss'Z'", CultureInfo.InvariantCulture), EndTime = DateTime.ParseExact("2021-07-12T11:30:00Z", "yyyy'-'MM'-'dd'T'HH':'mm':'ss'Z'", CultureInfo.InvariantCulture)},
new MeetingData() {Id=2, Subject="Meeting - 2", StartTime = DateTime.ParseExact("2021-07-13T12:00:00Z", "yyyy'-'MM'-'dd'T'HH':'mm':'ss'Z'", CultureInfo.InvariantCulture), EndTime = DateTime.ParseExact("2021-07-13T13