DevExpress MVC GridView - 如何获取单元格点击事件

Ren*_*ink 9 asp.net-mvc devexpress

使用DevExpress的GridView,我想在选择(或简单地点击)单元格时触发(clientside)事件.

已经有一种方法可以获得整行的点击事件,但是既没有摆弄也没有文档给我任何线索如何为细胞实现这一点.

这就是我对行的看法:

Html.DevExpress().GridView(settings =>
{
    // removed a lot of code here
    settings.ClientSideEvents.RowDblClick = "OnGridRowDblClick";
}).Bind(Model).GetHtml()
Run Code Online (Sandbox Code Playgroud)

这将导致OnGridRowDblClick双击行时调用javascript函数.理想情况下应该有类似的东西

settings.ClientSideEvents.CellClick = "OnCellClick";

但是,这不存在,我也找不到任何可以实现的目标.

Mik*_*ail 13

通过处理GridViewSettings.HtmlDataCellPrepared事件,可以为单个DataCell附加所需的客户端处理程序:

function OnCellClick(visibleIndex, fieldName) {
    alert(visibleIndex + " " + fieldName);
}


@Html.DevExpress().GridView(settings => {
    ...
    settings.HtmlDataCellPrepared = (sender, e) => {
        e.Cell.Attributes.Add(
            "onclick",
            string.Format("OnCellClick('{0}', '{1}');", e.VisibleIndex, e.DataColumn.FieldName)
        );
    };

}).Bind(Model).GetHtml()
Run Code Online (Sandbox Code Playgroud)