跳至正文
-
关注
IT极限技术分享汇

ITmax

IT极限技术分享汇

ITmax

  • 首页
  • 商店
  • 我的帐户
  • 结账
  • 购物车
  • 首页
  • 商店
  • 我的帐户
  • 结账
  • 购物车
关

搜索

技术分享

asp.net core 使用 DevExtreme20 将int列转为checkbox

作者 mumupudding
2023年8月16日 1 分钟阅读
0

后端设置扩展方法

public static DataGridColumnBuilder<T> SetNumCheckBox<T>(this DataGridColumnBuilder<T> builder)
{
    return builder.CellTemplate(new JS("CheckBoxCellTemplate"))
        .EditCellTemplate(new JS("CheckBoxEditorTemplate"))
        .Lookup(lookup => lookup.DataSource(new object[] {
                new {
                    label = "是",
                    value = 1,
                },
                new {
                    label = "否",
                    value = 0,
                },
    }).DisplayExpr("label").ValueExpr("value"));
}

前端添加单元格和编辑代码

const getNewDomId = (function () {
  let id = 1;
  return function () {
    return id++;
  };
})();

function CheckBoxEditorTemplate(el, e) {
  var domId = 'grid_cell_' + getNewDomId();
  el.html(`<div id="${domId}"></div>`);

  new Vue({
    el: '#' + domId,
    template: `<el-checkbox v-model="state" v-on:change="onChange" />`,
    data: {
      state: e.value === 1,
    },
    methods: {
      onChange(value) {
        e.setValue(value ? 1 : 0);
      },
    },
  });
}

function CheckBoxCellTemplate(container, options) {
  container.html(
    `<div class="dx-checkbox-container ${
      options.value === 1 ? 'dx-checkbox-checked' : ''
    }"><span class="dx-checkbox-icon"></span></div>`
  );
}

https://segmentfault.com/a/1190000044117972

作者

mumupudding

关注我
其他文章
上一个

chatglm2-6b模型在9n-triton中部署并集成至langchain实践 | 京东云技术团队

下一个

Spring BeanDefinition 也分父子关系?

暂无评论!成为第一个。

发表回复 取消回复

您的邮箱地址不会被公开。 必填项已用 * 标注

Copyright 2026 — IT极限技术分享汇. 备案号:浙ICP备17006560号-2