【发布时间】:2017-11-10 05:25:07
【问题描述】:
我正在使用 Infragisitics 17.1 UltraGrid。
网格有 2 列。
我想要第二列的格式化字符串,如下所示。
'20170102123456' => '2017-01-02 12:34:56"
第二列的数据类型是'string'而不是'date'。
这个网格会有大量的数据,所以任何转换都让我担心。
但欢迎任何广告。
DataSoure 如下所示。
private void SetTestData()
{
DataTable dtDataSource = new DataTable("table1");
dtDataSource.Columns.Add("OrderDate", typeof(DateTime));
dtDataSource.Columns.Add("RequiredDate", typeof(string));
ultraGrid1.DataSource = dtDataSource;
DataRow rowNew = dtDataSource.NewRow();
rowNew["OrderDate"] = DateTime.Now;
rowNew["RequiredDate"] = "20170101123456";
dtDataSource.Rows.Add(rowNew);
}
然后我像下面一样初始化网格,
private void UltraGrid1_InitializeLayout(object sender, Infragistics.Win.UltraWinGrid.InitializeLayoutEventArgs e)
{
// Fit columns
e.Layout.AutoFitStyle = AutoFitStyle.ExtendLastColumn;
// Set date formats
e.Layout.Bands[0].Columns["OrderDate"].Format = "yyyy-MM-dd HH:mm:ss";
e.Layout.Bands[0].Columns["RequiredDate"].Format = "yyyy-MM-dd HH:mm:ss";
}
第一列可以正常工作,但第二列不行。
我怎样才能像下面那样显示第二列?
'20170102123456' => '2017-01-02 12:34:56"
【问题讨论】:
-
因为第二列的类型为
string,所以将其设为 DateTime 并分配 DateTime 值 -
是的。你说得对。但我需要转换字符串值。我会有这么多数据,所以我担心转换的成本。
标签: c# infragistics ultrawingrid