Knockout-Kendo 库是否设计用于与 Kendo UI ASP.NET MVC html 助手一起使用?

Is the Knockout-Kendo library designed to work with Kendo UIs ASP.NET MVC html helpers?

我们有一个 ASP.NET MVC 5.0 应用程序,它同时使用了 Knockout 和 Kendo UI。由于历史原因,我们宁愿继续使用 Knockout 而不是使用 Kendo 的 MVVM 功能,但是,我们注意到 Kendo 与 KO 不完全兼容。为了解决这两个框架之间的不兼容问题,我一直在研究 Knockout-Kendo 库 (v0.9.0)。 Knockout-Kendo 库可以工作,但我注意到当我使用 Kendo 的 Html 助手时,.k-input class 被应用于最外层的跨度封装小部件;显然,这会改变小部件的外观,在我看来,这不应该发生。到目前为止,我还没有找到一种解决方法来阻止 .k-input class 被不当应用。

最初,我认为可能会应用 .k-input class,因为我在 Knockout-Kendo 库使用但使用 [=15= 的绑定语法中遗漏了一些微妙之处] KO 绑定让我回到原点,Kendo 小部件不会响应所有绑定。举例说明:

<div class="form-group">
    <label for="Start">Start</label>
    @Html.Kendo()
         .DatePickerFor(m => m.Start)
         .HtmlAttributes(new { data_bind = "kendoDatePicker: {enabled: enabledFlag, value: startDate}" })
</div>

使用此绑定语法声明小部件有效,但不恰当地应用了 .k-input class。

<div class="form-group">
    <label for="Start">Start</label>    
    @Html.Kendo()
         .DatePickerFor(m => m.Start)
         .HtmlAttributes(new { data_bind = "enabled: enabledFlag, value: startDate" })
</div>

并使用此绑定语法声明小部件无法正常工作。

所以,我的问题是:是否可以将 Knockout-Kendo 库与 Kendo 的 Html 助手一起使用,或者它是否仅设计用于html 输入标签?

HTML 助手将尝试初始化小部件,KO 绑定也是如此(当应用绑定时)。因此,如果您使用 knockout-kendo,您可能希望将绑定添加到普通元素,以便使用正确的处理程序正确初始化它,以便与您的视图模型进行双向绑定。