Build : C1Flexgrid v.2.5.20053.230
.Net 4.0使用C# WinForms
我的表单上有一个C1Flexgrid,多个数据填充为
//cfg is C1FlexGrid, pDataTable is DataTable
cfg.Clear(ClearFlags.UserData);
foreach (DataColumn dCol in pDataTable.Columns)
{
cfg.Cols.Count += 1;
iCol = cfg.Cols.Count - cfg.Cols.Fixed;
cfg.Cols[iCol].Name = dCol.ColumnName;
cfg.Cols[iCol].Caption = dCol.ColumnName;
cfg.Cols[iCol].DataType = dCol.DataType;
switch (dCol.DataType.ToString())
{
case "System.DateTime":
{
cfg.Cols[iCol].Format = "dd-MMM-yyyy";
break;
}
case "System.Decimal":
{
cfg.Cols[iCol].Format = "N3";
break;
}
default:
break;
}
}
cfg.DataSource = pDataTable.Copy();当我双击datepicker弹出以选择一个日期,然后移动鼠标,应用程序崩溃。
edit
为了增加关注,如果我使用enter键和箭头键将焦点从datepicker弹出转移到下一个单元格,则没有错误。
对于原因是“我的创造”还是C1Flexgrid上的一个bug,有什么想法吗?
发布于 2014-07-21 09:55:39
在你的问题描述中有两件令人困惑的事情。首先是DataTable:pDataTable的初始化,其次是环境信息。您是如何在您的.NET 4.0项目中添加了特定于框架2的构建的,这是未知的。请转到C1Pre-释放查找最新的柔性网格构建或使用这个建筑更新您的项目。
按照以下步骤解决问题:
如果这不能解决您的问题,根本问题将是您的pDataTable初始化。
请参见以下片段:
private void Form1_Load(object sender, EventArgs e)
{
int iCol;
pDataTable.Columns.Add("Dosage", typeof(int));
pDataTable.Columns.Add("Drug", typeof(string));
pDataTable.Columns.Add("Patient", typeof(string));
pDataTable.Columns.Add("Date", typeof(DateTime));
pDataTable.Rows.Add(25, "Indocin", "David", DateTime.Now);
pDataTable.Rows.Add(50, "Enebrel", "Sam", DateTime.Now);
pDataTable.Rows.Add(10, "Hydralazine", "Christoff", DateTime.Now);
pDataTable.Rows.Add(21, "Combivent", "Janet", DateTime.Now);
pDataTable.Rows.Add(100, "Dilantin", "Melanie", DateTime.Now);
this.cfg.Clear(C1.Win.C1FlexGrid.ClearFlags.UserData);
foreach (DataColumn dCol in pDataTable.Columns)
{
cfg.Cols.Count += 1;
iCol = cfg.Cols.Count - cfg.Cols.Fixed;
cfg.Cols[iCol].Name = dCol.ColumnName;
cfg.Cols[iCol].Caption = dCol.ColumnName;
cfg.Cols[iCol].DataType = dCol.DataType;
switch (dCol.DataType.ToString())
{
case "System.DateTime":
{
cfg.Cols[iCol].Format = "dd-MMM-yyyy";
break;
}
case "System.Decimal":
{
cfg.Cols[iCol].Format = "N3";
break;
}
default:
break;
}
}
cfg.DataSource = pDataTable.Copy();
} 除了环境之外,这个片段中的惟一不同的是DataTable的结构。当我编译时,当我双击datepicker弹出以选择日期,然后移动鼠标时,没有观察到崩溃。
您可以从这里下载工作项目。
https://stackoverflow.com/questions/24626657
复制相似问题