Dev GridView网格中格式化 TimeSpan

Dev官网 RepositoryItemTimeSpanEdit

结果如下:
Dev GridView网格中格式化 TimeSpan

问题描述:

  • 现在有一个TimeSpan 短时间
  • 需要在表格中格式化成 d天hh时mm分

尝试了很多方法 都没成功 如:

  • 多加一个字段专门用来显示格式化的时间
  • 网格的DisplayFormat.FormatString属性

翻官方Demo 和 文档发现了 RepositoryItemTimeSpanEdit 类
把网格的ColumnEdit 设置为这个类的实例对象 调整对象的属性

Code:

// 找到要更改的 Column
 var column = this.gridViewNode.Columns.ColumnByFieldName(nameof(ClassName.XXX));
 if (column != null)
 {
     var editor = new RepositoryItemTimeSpanEdit();
     // 获取或设置在编辑器未聚焦时是否仍使用掩码对显示值进行格式化。 就是在网格未编辑状态显示设置的格式
     // false时 网格中的格式会是 d.hh:mm:ss
     editor.Mask.UseMaskAsDisplayFormat = true;
     // 获取或设置是否允许在时间间隔内编辑秒。
     editor.AllowEditSeconds = false;
     // 获取或设置掩码类型。
     editor.Mask.MaskType = MaskType.DateTime;
     // 掩码格式
     editor.EditMask = @"d\天HH\时mm\分";
     column.ColumnEdit = editor;
 }
上一篇:Mysql 性能查询


下一篇:字符编码发展历程