1

我在 c# .net windows 应用程序中使用 Ultragrid,

我使用了一列数据类型System.DateTime。,在页面加载时它显示为空(如'--/--/--'),

经过一些验证后,我想让该列为空

当我试图使该列为空时,它将当前日期作为默认值或'01/01/0001'.

我将默认值设为空。

如何使该列为空意味着它应该显示为'--/--/--'

4

1 回答 1

1

这可能是您的问题DataSource,而不是网格的问题。

DotNet 中的DateTime数据类型是结构体,所以不能为空。如果您使用DataSet/DataTableUltraDataSource作为网格的数据源,则这些对象将所有内容存储为对象,以便它们可以处理 null 或DBNull. 我的猜测是,您可能将网格绑定到您自己的自定义类列表,并且该字段的 DataType 是DateTime并且不能接受空值。

如果您正在使用CLR2,也许您可​​以使用nullable DateTime, 代替。但是,您可能必须将Nullable列上的属性设置为 Nothing,因为即使是nullable类型也无法处理DBNull.

于 2013-05-16T10:48:45.817 回答