Как получить значения из выбранной строки в DataGrid для Windows Form Application? - PullRequest
14 голосов
/ 29 января 2012

Название довольно очевидно.У меня есть DataGrid для приложения Windows Form, и я хочу иметь возможность хранить значения выбранной строки.Какой самый простой способ сделать это?

Я нашел этот фрагмент кода в качестве примера в своем поиске, но не работает, когда DataGrid сортируется по-другому:

private void grdPatients_CurrentCellChanged(object sender, EventArgs e)
    {
        int row = grdPatients.CurrentRowIndex;

        grdPatients.Select(row);

        ArrayList arrayList = new ArrayList();

        for (int i = 0; i < 3; i++)
        {

            arrayList.Insert(i, (patientsDS.Tables["PatientList"].Rows[row].ItemArray.GetValue(i)));

        }

        textBox1.Text = "" + arrayList[0];

        textBox2.Text = "" + arrayList[1];

        textBox3.Text = "" + arrayList[2];
    }

Ответы [ 2 ]

31 голосов
/ 29 января 2012

Описание

Предположим, я понимаю ваш вопрос.

Вы можете получить выбранную строку, используя DataGridView.SelectedRows Коллекция. Если ваш DataGridView позволяет только один выбранный, посмотрите на мой образец.

DataGridView.SelectedRows Получает коллекцию строк, выбранных пользователем.

Пример

if (dataGridView1.SelectedRows.Count != 0)
{
    DataGridViewRow row = this.dataGridView1.SelectedRows[0];
    row.Cells["ColumnName"].Value
}

Дополнительная информация

2 голосов
/ 29 декабря 2018

Вы можете просто использовать

DataGridView1.CurrentRow.Cells["ColumnName"].Value
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...