C# Datagridview列值显示问题
我无法解决以下问题:C# Datagridview列值显示问题,c#,excel,datagridview,C#,Excel,Datagridview,我无法解决以下问题: 连接到Excel(oledb连接) 将所有数据提取到datagridview 从Excel获取的示例源(Col1到Col3 Excel属性为“常规”,Col4为日期特定): 一旦数据进入datagridview (DataGridView.AutoGenerateColumns=True),它似乎需要 假定Col2仅包含整数,不显示 不是整数的单元格值 从datagridview获取的示例: Col1 Col2 Col3 Col4 Text
- 连接到Excel(oledb连接)
- 将所有数据提取到
datagridview
- 一旦数据进入
(datagridview
),它似乎需要 假定DataGridView.AutoGenerateColumns=True
仅包含整数,不显示 不是整数的单元格值Col2
Col1 Col2 Col3 Col4
Text1 1.5 288.77 3/1/2013
Text2 1.3 352.47 3/1/2013
Text3 206.93 3/1/2013
Text4 1 206.93 3/1/2013
Text5 1 206.93 3/1/2013
- 实际问题是我正在验证datagridview中的数据 针对一个XML文件,我正在验证一个日志,该日志提供了用户rowID 和实际的源值。我似乎无法得出相同的值 datagridview的
- 到目前为止,我找到的唯一部分解决方案是显式 将所有Excel字段转换为文本,但这显然会弄乱一些 字段的名称(例如:日期字段)
如何获取datagridview中的所有源文件值,然后执行所有后续的数据验证任务?我建议创建一个数据表,其中的数据列具有所需的类型,然后将数据获取到DataTable中。最后,将DataTable绑定到DataGridview可能会对您有所帮助。
您确实不需要了解文件中数据的任何信息,就可以构建一个可用的表。看起来您只是试图将Excel原始数据(在Excel工作表中格式化)提取到datagridview中进行显示,然后执行其他数据验证。 我建议使用下面的混合列连接字符串示例(IMEX):
我连这个都看不懂。格式化一点。为格式化问题道歉-应该现在就解决。谢谢塔里克,这里有一个进一步的澄清-我对不同类型的数据使用这个,所以它应该是动态的。我无法设置精确的列数和类型,因为这些列数和类型可能因源而异。您有没有办法提前确定列数据类型?我的意思是,在从Excel读取数据时,您能否在运行时确定列类型?谢谢,这正是我所需要的——按原样提取数据,然后继续执行任何要求的验证。这是读取Excel文件的有效方法,但Ventsislav的答案正是我所需要的。谢谢。没问题。很高兴你得到了你需要的东西。
Col1 Col2 Col3 Col4
Text1 1.5 288.77 3/1/2013
Text2 1.3 352.47 3/1/2013
Text3 206.93 3/1/2013
Text4 1 206.93 3/1/2013
Text5 1 206.93 3/1/2013
strConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;" +
"Data Source=" + strFilePath + ";Jet OLEDB:Engine Type=5;Extended Properties='Excel 12.0;HDR=NO;IMEX=1'";