DataGridView CellSelect и FullRowSelect
Итак, у меня есть несколько datagridviews, которые мы установили в FullRowSelect
. Теперь пользователи запрашивают возможность выбора отдельных ячеек для функций копирования.
я поставил DataGridView
to CellSelect
но когда я запускаю приложение, когда я нажимаю на заголовок строки, он не выделяет полную строку, только первый столбец.
Я попытался с помощью RowHeaderMouseClick
С CellMouseClick
чтобы получить режим выбора для переключения, но для RowHeaderMouseClick
чтобы выбрать его полностью, мне нужно нажать на заголовок строки несколько раз.
private void DataGridView_RowHeaderMouseClick(object sender, DataGridViewCellMouseEventArgs e)
{
dataGridView1.SelectionMode = DataGridViewSelectionMode.FullRowSelect;
}
как я могу легко или не так легко переключаться между CellSelect
и FullRowSelect
в зависимости от того, что они выбрали по сетке?
4 ответов
Если я вас понимаю, вы хотите иметь возможность выбирать отдельные ячейки, но также легко выбрать полную строку?
Если это так, установите SelectionMode в RowHeaderSelect
.
DataGridView.SelectionMode = DataGridViewSelectionMode.FullRowSelect;
1-вы фактически используете структуру DataGridView, а не ваш объект DataGridView.
2-SelectionMode не должен изменяться каждый раз, когда пользователь нажимает строку, но в вашем конструкторе вашей программы.
пример
public MyForm()
{
dataGridView1.SelectionMode = DataGridViewSelectionMode.FullRowSelect;
}
добавить одну строку кода.
this.dataGridView1.SelectionMode = isTrue == true ? DataGridViewSelectionMode.FullRowSelect : DataGridViewSelectionMode.RowHeaderSelect;