2011-03-31 143 views
12

我需要創建一個保存同步數據的TreeView,如DataGrid。創建一個WPF混合控件(TreeView + DataGrid = DataTreeGrid)

爲了澄清,看看這個圖片:
DataTreeGrid Custom Control

所以,我在左側與右側的列一個TreeView。
的數據將來自這樣的對象:

public NodeData Parent; 
public List<NodeData> Children; 

public String Label; 

public Boolean DataA; 
public Boolean DataB; 
public Boolean DataC; 
public Boolean DataX; 
public Boolean DataY; 
public Boolean DataZ; 

我如何創建呢?

+0

可能的延遲http://stackoverflow.com/questions/1020213/c-can-i-show-an-expandable-tree-like-view-in - 一個數據網格,還http://stackoverflow.com/questions/3457107/wpf-handle-editable-hierarchical-data-treeviewdatagrid-hybrid – xdumaine 2011-03-31 15:43:51

+0

@roviuser,該主題將不會回答我的問題......它甚至解決直接問題...但是,似乎是相同的情況... – NemoStein 2011-03-31 15:46:02

回答

0

對我來說,這看起來像一個普通的DataGrid與在其上設置幾個分組

所以你的情況,你會創建一個DataGrid上根,節點#,節點2個數字,團體和節點第三號。

也彙整NODEDATA的列表,以便它是用含根,NodeLevel1,NodeLevel2和NodeLevel3

性能
2

This是我已經找到了呈現這樣的數據最好控制每個項目的單個列表。它不需要viemodels上的接口/基類,並使用HierarchicalDataTemplate

+1

我發現它很奇怪地處理鍵盤導航(向上和向下鍵)。從這裏控制:http://blogs.msdn.com/b/atc_avalon_team/archive/2006/03/01/541206.aspx應該是適當的鍵盤處理上述控制的替代品。 – Gman 2015-04-22 21:45:44