c# - 将 hhmm DataGridView 单元格值转换为 TimeSpan 字段

标签 c# .net datagridview

我想将 DataGridView 列中的 TimeSpan 字段显示为 hhmm。并允许用户以这种格式对其进行编辑。据我所知,我需要向 CellFormatting、CellParsingCellValidating 事件添加一些逻辑。所以我想我必须检查列名,并为那些需要它的人处理它。

但是为了代码重用,我还能如何更好地解决这个问题呢?我可以创建一个自定义的 DataGridViewColumn 类来放置这个逻辑吗?那将如何实现?我看不到 DataGridViewColumn 类存在的任何事件,所以不确定在这里做什么。

最佳答案

我会查看 DataGridViewColumn.CellTemplate 属性,它属于这种类型:

public abstract class DataGridViewCell : DataGridViewElement, ICloneable, IDisposable

它有这些有趣的特性:

Value: object
ValueType: Type
ValueTypeConverter: TypeConverter

从那里,我会查看 TypeConverter 类。

希望这会有所帮助,这就是我在浏览 ILSpy 的大约 2 分钟内可以收集到的内容.

关于c# - 将 hhmm DataGridView 单元格值转换为 TimeSpan 字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6097583/

相关文章:

c# - 刷新按钮复制datagridview数据

c# - datagridview 中行分隔符的颜色

c# - 通过枚举索引器以紧凑的方式访问类成员

c# - 如何在 C# 中循环遍历 json 字符串?

c# - NHibernate:保存 transient 实例时如何更新身份标识?

javascript - 如何在ASPX页面弹出条件确认框?

c# - 如何在 C# 中制作一个公共(public)秒表

c# - 为什么我的正弦算法比默认算法慢得多?

c# - 在 ASP.NET MVC 3 Controller 生命周期中,何时构建 controllerContext?

.net - 文件版本与程序集版本