2016-09-28 3 views
0

トピックの説明:DataGridViewの特定の列から異なる値の一覧を返す方法はありますか?シンプルなバージョンは上記のみ有効な値があることを前提としDataGridViewから異なる値の一覧を返します。

var vv = dataGridView1.Rows.Cast<DataGridViewRow>() 
          .Select(x => x.Cells[yourColumn].Value.ToString()) 
          .Distinct() 
          .ToList(); 

注:

+1

ビューから値を取得しないでください。代わりに、それらをモデルから読みます。 – dasblinkenlight

+0

はい、データソースの代わりにビューでもっとうまくいくはずです。 –

+0

私はこのリンクはあなたのためだと思う:http://stackoverflow.com/questions/10899568/count-distinct-values-of-a-column-in-datagridview-using-linq-in-net – praguan

答えて

3

これはあなたが求めて何をすべき。新しい行や空のセルがある場合は、次のように展開することもできます。

var vv = dataGridView1.Rows.Cast<DataGridViewRow>() 
          .Where(x => !x.IsNewRow)     // either.. 
          .Where(x => x.Cells[column].Value != null) //..or or both 
          .Select(x => x.Cells[column].Value.ToString()) 
          .Distinct() 
          .ToList(); 
+0

これを "oneliner"にすることは可能ですか?値を直接リストに保存したいのですか? –

+0

???これは本当に1つのライナーであり、リストを作成します。私は、読みやすくするために改行を挿入しました。 – TaW

+0

ああ私の知識の不足は邪魔です...私は自分でC#を学んだので、このvarがデータソースとして使用可能であることを確認していませんでした。 –

関連する問題