はじめまして。江尻と申します。
VB.NET 2005で開発しています。
DataTableのフィルタについて質問があります。
たとえばDataTable1で列Aが"1"のものだけDataTable2に取得したい
という場合、どうすればよいのでしょうか?
DataTableにはSELECTというプロパティがあるみたいなんですが、
配列で帰ってくるみたいでDataTable2に格納できません。
よろしくお願いいたします。
直接、別の DataTable に格納するような方法は無いと思います。
DataGrid などに表示するのに必要な場合は DataView を操作
します。
ヘルプ(MSDN)で[DataTable.DefaultView プロパティ]のページに
サンプルコードが載っています。
…あれ?。。。できるのか???
ちょっと検証中。。。
特攻隊長まるるうさん、はじめまして。
いろいろと調べていただいてありがとうございます。
私もいろいろと調べていますが、やはりうまいこといきません。
もしわかりましたら、教えてください。
一応、できないこともなさそうなので手順を載せます。
・Clone して新しい DataTable を用意します。
・NewRow メソッドで新しい DataTable に追加する DataRow を用意します。
・Select でフィルタを掛けた DataRow の配列を用意します。
・フィルタを掛けた DataRow の配列から NewRow で用意した DataRow へ
ItemArray プロパティでごっそりデータを移動します。
・新しい DataTable に Rows.Add したらできる感じ?
ImportRow と言うメソッドもあります。
ツイート | ![]() |