mar*_*mnl 14 wpf datagrid datagridview wpfdatagrid winforms
我有WPF和Windows Forms的经验,但是只使用了Windows Forms DataGridView而不是WPF DataGrid(它只包含在.Net 4中,或者可以从Codeplex添加到.Net 3.5中,我理解).我即将使用其中一个控件来大量创建大量数据,并且读取性能是WPF DataGrid的一个问题所以我可能会坚持使用Windows窗体DataGridView.这是这样的吗?
我不想使用第三方控件.
对于大量数据,Windows窗体DataGridView是否为WPF DataGrid提供了显着的性能?
如果我使用WPF,我宁愿使用.Net 3.5S SP1,除非.Net 4中的DataGrid明显更好?
此外,我想使用ADO与DataTable,我认为它更适合Windows窗体..
Col*_*inE 17
根据您的需要,除非您有其他要求引导您使用WPF,否则我建议使用WinForms DataGridView.
WPF DataGrid是通过Codeplex提供的,作为"带外"版本,即这些控件最终将进入WPF API,但是早期在codeplex上发布,以便我们可以在下一个主要版本之前从中受益.NET发布.您可以使用.NET 4.0或codeplex DataGrid.据我所知,他们是同一个人.WPF DataGrid可以很好地与DataTables一起使用.请参阅以下文章中的示例:
http://www.codeproject.com/KB/WPF/WPFDataGridExamples.aspx
但是,WPF框架和视觉效果比WinForms略重一些.此外,WinForms DataGridView非常成熟.
对于非常大的数据集,WinForms DataGridView有一个功能在WPF DataGrid中不存在,这对于非常大的网格(数百万行)至关重要,这是一种虚拟模式:
http://msdn.microsoft.com/en-us/library/ms171622.aspx
也称为数据虚拟化.在此模式下,您告诉网格数据中有多少行,然后处理事件以填充单元格.这很好地扩展.我已经将它用于大规模复杂的网格.
WPF具有UI虚拟化,这是一种UI控制回收形式,但不是数据虚拟化.
希望有所帮助.