如何在 Kendo UI 网格中创建自定义删除/销毁按钮/命令?

Posted

技术标签:

【中文标题】如何在 Kendo UI 网格中创建自定义删除/销毁按钮/命令?【英文标题】:How to create custom Delete/Destroy button/command in Kendo UI grid? 【发布时间】:2012-11-02 02:50:02 【问题描述】:

我正在使用带有GridEditMode.InCell 的 Kendo UI 网格,我需要在网格列中添加删除/销毁命令的超链接,而不是默认的“删除”按钮。

我当前的代码如下:

c.Command(command => command.Destroy()).Width(90);

【问题讨论】:

【参考方案1】:

这就是我最终要做的事情

          c.Template(@<text></text>)
              .Width(50)
              .ClientTemplate(@"<a class=""k-button-icontext k-grid-delete"" href=""\#"">Delete</a>");

【讨论】:

是的,这为我提供了上面定义的标记,但点击它什么也没做。 请注意,您必须将 .Editable() 添加到网格中才能将事件附加到“k-grid-delete”项 @(html.Kendo().Grid&lt;Your.Type&gt;() ... .Editable(editable =&gt; editable.Mode(GridEditMode.InCell)) GridEditMode 有 2 种类型。我的链接包含图标的跨度:&lt;a class=""k-button k-button-icontext k-grid-delete"" href=""\#""&gt;&lt;span class=""k-icon k-i-delete""&gt;&lt;/span&gt;Delete&lt;/a&gt;【参考方案2】:

您需要做的就是添加一个具有k-grid-delete 类的元素。

例如,您可以将以下锚元素添加到模板列中,它将开始用作删除按钮。

<a class="k-button k-button-icontext k-grid-delete" href="#">My delete !</a>

【讨论】:

感谢 XMR 的回复。但是我不明白应该在哪里添加该代码。 c.Command 没有模板或 ClientTemplate,所以我不能在那里添加它。我也试过: c.Bound(p => p.Id) .ClientTemplate("我的删除!") .Title("动作") .Width(100);请指教。 确实,我建议您将其添加到 ClientTemplate。使用ClientTemplate时不显示吗?或者单击按钮时它不起作用。 再次感谢。 ClientTemplate 不是命令的方法。所以当我应用它时,代码仍然可以编译,但我收到运行时错误“CS1061:'Kendo.Mvc.UI.Fluent.GridActionColumnBuilder'不包含'ClientTemplate'的定义并且没有扩展方法'ClientTemplate'接受第一个参数可以找到“Kendo.Mvc.UI.Fluent.GridActionColumnBuilder”类型的(您是否缺少 using 指令或程序集引用?)”请建议。 我不确定您要达到的目标。是的,Command 列没有 Template/ClientTemplate 方法 - 以上应该用于常规 Template 列。 您为我指出了正确的方向 +1,非常感谢,但它并不完全正确,您不必使用 k 按钮,因为它仍在创建按钮。我将在此发布我的完整答案。感谢您的帮助!

以上是关于如何在 Kendo UI 网格中创建自定义删除/销毁按钮/命令?的主要内容,如果未能解决你的问题,请参考以下文章

Kendo UI - 如何在编辑时使特定字段只读,同时在剑道网格中创建可编辑?

Angular 的 Kendo UI:如何在网格中定义最小宽度

如何在 Java 中创建自定义 GUI 组件? (需要开始提示)

如何在没有 Jquery-ui 且没有 Bootstrap 的情况下在 angularjs 中创建自定义进度条?

如何在Kendo UI网格中自定义导出excel

Kendo UI MVC——如何获得更灵活的网格自定义命令?