将WPF网格控件数据绑定到CSV文件
这样的事情可能吗将WPF网格控件数据绑定到CSV文件,wpf,xaml,.net-4.0,csv,.net-4.5,Wpf,Xaml,.net 4.0,Csv,.net 4.5,这样的事情可能吗 我目前正在尝试将CSV文件直接读取到WPF数据网格中。该文件没有已知的格式-也就是说,我不知道字段是什么,或者有多少。我只想以网格格式显示整个文件(类似于excel在打开CSV文件时所做的操作)。我不太熟悉DataGrid的WPF变体,但熟悉通用的.NET DataGrid和DataGridView控件。假设此控件以类似的方式运行,则只需打开csv文件,逐行循环读取并拆分制表符或逗号,然后将数据放入数据表。从那里,您可以将DataGrid控件的数据源设置为DataTable(或
我目前正在尝试将CSV文件直接读取到WPF数据网格中。该文件没有已知的格式-也就是说,我不知道字段是什么,或者有多少。我只想以网格格式显示整个文件(类似于excel在打开CSV文件时所做的操作)。我不太熟悉DataGrid的WPF变体,但熟悉通用的.NET DataGrid和DataGridView控件。假设此控件以类似的方式运行,则只需打开csv文件,逐行循环读取并拆分制表符或逗号,然后将数据放入数据表。从那里,您可以将DataGrid控件的数据源设置为DataTable(或者创建DataView,如果您需要一些自定义格式/查看),并调用Refresh()方法 DataGrid基于控件,项由类型为
IEnumerable
的控件表示。因此,如果您只是想在DataGrid中显示CSV,那么您应该在实现IEnumerable
的任何数据结构中读取CSV,并通过以更优先的方式从XAML绑定的代码将其设置为DataGrid.ItemsSource
属性。因此,您的网格将有一个代表整个CSV文件行的列。如果要在单独的列中显示每个值,IEnumerable
数据结构的每个项(我建议IList
)也应该表示IEnumerable
,基本上是IList
要在本地数据结构中读取CSV,我建议使用一些免费的CSV解析库,而不是自己进行,因为CSV解析有时很棘手。作为一个案例,我们来看看这个例子
我相信这是一个非常接近的例子,可以说明你正在尝试做什么:
(ListView也是ItemsControl,所以解决方案是相同的)您是否总是有标题行?如果这提供了解决方案,我可以有。这更像是csv读/写问题。一旦您拥有了解析功能,就可以更容易地实现分页等等。