Я бы использовал DataGrid. Эта функциональность уже существует, поэтому нет необходимости заново изобретать колесо ... кроме того, вы можете настроить DataGrid точно так же, как ListView, если у вас есть жгучее желание сделать это. Обычно в моих приложениях я использую DataGrid, который по умолчанию доступен только для чтения, затем я предоставляю пользователю кнопку, позволяющую ему изменять содержимое DataGrid (установите для свойства только для чтения значение false). Я также изменяю стиль DataGrid, потому что я думаю, что он выглядит уродливо из коробки ... особенно на машинах с XP.
Напомним, на прошлой неделе я установил свежую копию VS 2008 SP1 на новый ПК, и он уже был с уже загруженным WPF Toolkit (который включает DataGrid, DatePicker и т. Д.). Так что вы можете проверить это.