I have a datagridview and a status strip on my form. When I click a row or cell, the label from the status strip should change according to it's row number. My datagridview is being generated at run time by a dataset.

Many Click events of the DataGrridView show a DataGridViewCellEventArgs

private void dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e)
            // e.RowIndex and e.ColumnIndex

This class gives you access to the row and column.

You are welcome :)

I will only add to ddanbe` post:
If you are not in some dgv`s event handler you get the row number like:

private void dataGridView1_CellClick(object sender, DataGridViewCellEventArgs e)
            int rowIndex1 = e.RowIndex;
            int rowIndex2 = GetRowIndex();

        private int GetRowIndex()
            int rowIndex = this.dataGridView1.CurrentCell.RowIndex;
            return rowIndex;


Thanks for the addition!

Depends on what your intentions are, as long as you know what you are doing, please add 1. No problem.

There's an error if I click an empty datagridview. I suppose I need to set a condition for this? Like if datagridview is not null?

I need to indicate the row is 0, so I think an if else condition is necessary, don't you think? But using condition just to tell the row is 0? Isn't the code supposed to do that?

This question has already been answered. Start a new discussion instead.