Ultragrid で xml データを表示しようとしています。Ultragrid.loadfromxml を使用してファイルの場所を使用しようとしましたが、ファイル入力ストリームも使用して、それを load xml メソッドにスローしました。助けはありますか?
3 に答える
この目的のために、次のような XML ファイルをロードできます。
Dim dt as DataTable = new DataTable("myData")
dt.ReadXml("path_to_your_file")
ultraGrid1.DataSource = dt
Infragistics Ultragrid Ninja の Mike Saltzman 自身の言葉を引用すると、次のようになります。
グリッドには、IList または IBindingList を実装する何らかのデータ ソースが必要です。そのため、XML をこれらの型のいずれかのオブジェクトにロードする必要があります。
そのため、これらのインターフェイスの 1 つを実装するコレクション タイプに XML をロードし、それをグリッドのデータ ソースとして設定する必要があります。ファイルから XML をロードする方法については、この質問をご覧ください。次に、それは次のように簡単です...
UltraGrid1.DataSource = myAwesomeBindingListMadeFromXML
UltraGrid.DisplayLayoutのLoadFromXMLメソッドは、グリッド自体のデータではなく、以前に保存されたオフ レイアウト (つまり、表示設定) をロードするように設計されています。
UltraGrid は IList を実装するあらゆるものにバインドできるため、何らかのリストにデータをロードする必要があります。データの初期ロード後にグリッドがコレクションへの変更に応答する必要がある場合は、IBindingList を使用します。オンライン ヘルプに DataSource を設定できる内容の詳細があります: http://help.infragistics.com/NetAdvantage/WinForms/Current/CLR2.0/?page=Infragistics2.Win.UltraWinGrid.v12.1~ Infragistics.Win.UltraWinGrid.UltraGridBase~DataSource.html
XML が DataTable に読み込むことができる形式である場合、最も簡単な解決策は、ReadXml を呼び出してデータを DataTable にロードした後、UltraGrid を DataTable にバインドすることです。
DataTable を使用できない場合は、LINQ to XMLを使用してデータを取得し、UltraGrid がバインドできるものに変換できます。