2009-05-07 7 views
0

WPFでは、データマトリックス(データテーブルまたはXMLファイル)をListViewにバインドできますか?WPF/Silverlightの場合:DataTableまたはXMLファイルをListViewにバインドできますか?

は、次のXMLデータセットを考える:

<data> 
    <cols> 
    <col name="FirstName" /> 
    <col name="LastName" /> 
    <col name="Age" /> 
    </cols> 
    <rows> 
    <row> 
     <col>Huey</col> 
     <col>Freeman</col> 
     <col>10</col> 
    </row> 
    <row> 
     <col>Michael</col> 
     <col>Caesar</col> 
     <col>10</col> 
    </row> 
    <row> 
     <col>Reiley</col> 
     <col>Freeman</col> 
     <col>8</col> 
    </row> 
    <row> 
     <col>Cindy</col> 
     <col null="true" /> 
     <col>9</col> 
    </row> 
    <row> 
     <col /> 
     <col>Robert Jebediah Freeman</col> 
     <col>70</col> 
    </row> 
    </rows> 
</data> 

は、リストビューに、このデータをバインドすることが可能ですか?

データ列はあらかじめ定義されていないことに注意してください。どのような種類のものでも構わないし、名前もさまざまです。

P/S:私はDataGridを認識していますが、使用するには重すぎるため、データを表示するだけです。

答えて

0

これをリストビューにバインドできますが、列は自動生成されません。これを行う独自のコントロールを構築するか、他の誰かがすでに行っているコントロールを見つける必要があります。

googleの場合は、すべての種類の記事とコード付きです。

2

これにはXmlDataProviderを使用できます。

XmlDataProvider data = new XmlDataProvider(); 

// you can load data from file/http/whatever 

data.Source = "... some URL ..."; 

// *OR* you can go directly against an already existing XmlDocument 

// data.Document = someXmlDocumentInstance; 

data.XPath = "/books/book"; // specific to your schema obviously 

myListView.ItemsSource = data.Data; 

することもできますセットアップ結合

Binding myBinding = new Binding(); 

myBinding.Source = data; 

BindingOperations.SetBinding(myListView, ItemsControl.ItemsSourceProperty, myBinding); 

HTH

関連する問題