在 Kendo 调度程序中更改颜色

Changing colors in Kendo Scheduler

我有一个 Kendo 调度程序,我想将事件的背景设置为不同的颜色,并通过这样做部分实现了它:

剃须刀

@(Html.Kendo().Scheduler<MyProj.Models.MyModel>()
    .Name("scheduler")
    .Views(views =>
    {
        views.DayView();
        views.WeekView();
        views.MonthView(mv => mv.Selected(true));
    })
    .EventTemplateId("eventTemplate")
    ...

Javascript

<script id="eventTemplate" type="text/kendo-tmpl">
    <div class='asset-task' style='color: black; background-color: #=Color#'>
        #= Description #
    </div>
</script>

效果很好,可以很好地将模型的背景颜色应用到事件中。但是,这仅对月和议程视图有效,使日视图和周视图中的事件具有默认背景颜色,每个事件都相同。

我找到了这个:

.AllDayEventTemplateId("eventDayTemplate")

它有效,但仅适用于 "all day" 事件,不适用于其他事件。例如,如果事件从 9:00 到 10:00,则它不会根据模板定义着色。

intellisense 没有显示任何 DayEventTemplate 我认为会用于任何一天的事件,"all day" 与否。

有什么方法可以实现吗?

我已经尝试过您的方法,它似乎如您所愿,请查看我创建并使用您的逻辑的示例:demo .

我所做的唯一更改是添加 css class 以覆盖默认 ".k-event" 并将背景和边框设置为 none

.k-event{
    background: none;
    border: none;
}

也许这可以解决您的问题。

或者还有其他选项,例如资源的使用:ref Resources ?
另一种选择是在数据绑定事件中更新事件的 div。这种方法在这里解释:data-bound event explanation

如果以上不能解决您的问题,请告诉我。