我有一个有趣的问题,我想与你分享,谢天谢地,期待你的回复,因为我自己没有答案。
我有一个DataGridView(dgv),其中保存了一列用于日期时间显示。
我把它初始化为像MySQL中经常使用的日期字符串,即在dgv结构中的2011/1/3,当然它正确地显示为人类可读的字符串,即2011年1月3日。然后我将所有显示的内容保存到另一个excel文件中
之后我尝试重新打开它,这是按下打开按钮后的代码
private void OpenClicked(object sender, ....)
{
dataGV.Rows.Clear();
OpenAndBindXls(filename,dataGV);
}
可悲的是,日期时间显示不符合预期,全部为5762,3552,3354等。
我有两个真正的问题,
[1]如何解释上述问题?
[2]在上面的代码中,它只删除行,如果我想删除列但仍保持实例存活,我应该使用哪些方法?
[编辑]对不起第二个问题是在我的脑子根本不新鲜的时候做的,我注意到了我的愚蠢。我只需添加dataGV.Columns.Clear();
:-D就可以解决问题。多么愚蠢!好吧,我累了,现在我会睡个不安。无论如何,谢谢阅读。
答案 0 :(得分:1)
我认为你得到的是日期时间格式,而不是你想象的那样。 您可以尝试在绑定之前转换数据,也可以使用CellFormatting事件将值转换为可视日期时间: http://msdn.microsoft.com/en-us/library/system.windows.forms.datagridview.cellformatting.aspx