Заголовок столбца для WPF TreeView

Я использую WPF TreeView для отображения некоторой иерархической информации. Каждый объект в TreeView состоит из нескольких атрибутов, таким образом, я использую Сетку в своем HierarchicalDataTemplate для отображения этих атрибутов:



    
        
            
            
            
            
        

        
        
        
        
    


Это отображается как хороший TreeView с 4 столбцами - пока неплохо! Единственной дополнительной вещью, в которой я нуждаюсь, является заголовок выше TreeView, который отображает имена столбцов. Ширины столбца заголовка должны синхронизироваться с TreeViewItems, и также стили заголовка должны быть настраиваемы. Что самый легкий путь состоит в том, чтобы сделать это?

P.S. Я нашел два решения, которые приблизились:

1) TreeListView здесь, но это требует, чтобы я реализовал пользовательский интерфейс (ITreeModel) к моей модели. Также подход в этом решении должен запуститься с ListView и реализовать RowExpander вручную. В моем случае TreeView достаточно близко к тому, в чем я нуждаюсь, таким образом, я надеюсь, что помещение заголовка на нем должно быть очень простым.

2) TreeListView здесь. Этот действительно запускает с TreeView, но я не могу выяснить, как настроить заголовок. Я подозреваю, что должен настроить GridViewHeaderRowPresenter в generic.xaml, но этот элемент, кажется, не имеет свой собственный ControlTemplate.

9
задан Naresh 16 May 2010 в 03:45
поделиться