2010-05-21 34 views
1

我有一個結構集合。結構只是一些字符串。 示例 public struct ReportLine { public string Name; 公共字符串地址; 公共字符串電話; ... //約10個其他字符串 } 我無法更改此部分。我想要做的是將其顯示在一個簡單的網格中,或者在WPF中模擬。我唯一的要求是: 一)需要列標題 B)行必須在顏色 C的第二)大到足以容納最大數據(這是不知道,直到運行時)在WPF中呈現網格或類似的字符串結構集合 - 例子?想法?

可有人點我一個例子,列讓我開始? GridView是否要走?還是DataGrid?或者也許只是網格?
我在C#2008中有Pro WPF書,它涵蓋了將ListBox綁定到集合,但集合似乎總是一個字段(例如40個名稱的集合)的集合。在這裏我有一個結構集合(實際上是一個數組)。 如何設置數據綁定?您可以看到,我對此很陌生,可能會從對文章的引用中獲益最多。我發現了一篇關於1字段集合的文章,但沒有包含綁定到結構數組的示例。另外,如果您要求列的大小足以滿足該列中的所有數據,而不僅僅是可見數據,那麼我的初始研究表明c)不容易完成。

感謝, 戴夫

回答

1

上述所有可以與DataGridListView來完成。最好結合DataTemplates。

它非常簡單,比如你列出的所有要求,可以用這個單一行achived:

<DataGrid AutoGenerateColumns="True" 
      ItemsSource="{Binding Items}" 
      AlternatingRowBackground="Gray" /> 

項目在哪裏北京時間Item[]型(你的結構實例的數組)的屬性。

請注意,字符串需要暴露爲propeties而不是字段。如果你的結構不符合這個要求,你將不得不爲此引入一個適配器類或結構。數據綁定通常不適用於字段。

+0

謝謝!這很好。對於那些稍後關注此線程的人,請注意,我必須下載WPF Toolkit以獲取DataGrid。我在VS2008上,這可能不是VS2010的情況 – Dave 2010-05-24 20:27:36