Marci
Marci

Reputation: 319

How to count specific values in a column of datagridview column

In a DataGridView I need to count how many duplicate values a column has.

This is my Datagridview:

enter image description here

For example, I'd like to count how many "X" I have in my "RisFin" column, and put the result in a textbox.

Upvotes: 3

Views: 11523

Answers (2)

Reza Aghaei
Reza Aghaei

Reputation: 125332

You can count what you need this way:

var count= this.dataGridView1.Rows.Cast<DataGridViewRow>()
               .Count(row => row.Cells["RisFin"].Value == "X");

this.textBox1.Text = count.ToString();

Using linq queries you can simply do many things with your grid. and the key point is casting the Rows collection to an IEnumerable<DataGridViewRow> using Cast<DataGridViewRow>(), then you can perform any query on it, using linq.

Upvotes: 4

wingerse
wingerse

Reputation: 3796

Well, you could just iterate through the rows and increment your counting variable if row.Cells[0] is "X". Here's a LINQ solution.

int xCount = dataGridView.Rows
                .Cast<DataGridViewRow>()
                .Select(row => row.Cells["RisFin"].Value.ToString())
                .Count(s => s == "X");

Upvotes: 0

Related Questions