Listview与datagrid

13 .net wpf datagrid listview gridview

使用数据网格控件而不是使用列表视图有哪些主要优点?什么时候应该使用?

Sev*_*ate 12

考虑到Colin EberDataGrid和GridView讨论中所说的一些要点:

  • ListView(GridView)是一个开箱即用的只读控件.标准解决方案是将列表与由textBoxes组成的"详细信息视图"同步
  • DataGrid允许就地编辑数据
  • DataGrid执行事务编辑(该行被视为原子)
  • DataGrid支持自动列生成
  • DataGrid有一个RowDetails元素(如果你喜欢那种东西!)
  • DatGrid几乎支持ListView所做的一切,多种选择模式,样式等......

另一个重要的一个:

  • 通过单击列标题,DataGrid具有内置排序支持.虽然添加排序到ListView/GridView是绝对可能的,但我宁愿在DataGrid中拥有开箱即用的这类东西.

  • 我不知道这个性能问题,但它似乎在WPF4.5 +中得到修复 (2认同)

cod*_*zen 11

我放弃了.Net 4中DataGrid的ListView,因为模板化列更容易.

布局也更明智,我不需要记住将Horizo​​ntalContentAlignment设置为Stretch以获取单元格内容以覆盖单元格.另一个很好的功能是DataGrid上的编辑模板,这使我不必在编辑单元格时使用CellTemplateSelector来获得不同的控件.