Відповіді:
Не перевірено, але я думаю, ви можете зробити наступне:
dataGrid.Rows[index].Selected = true;
або ви можете зробити наступне (але знову ж таки: не перевірено):
dataGrid.SelectedRows.Clear();
foreach(DataGridViewRow row in dataGrid.Rows)
{
if(YOUR CONDITION)
row.Selected = true;
}
SelectedRows.Clear()
лише вибрані рядки, але разом ClearSelection()
із стовпцями => виділення стовпців втрачаються ...
dataGrid.CurrentCell = dataGrid.Rows[row.Index].Cells[0];
У Visual Basic зробіть це, щоб вибрати рядок у a DataGridView
; вибраний рядок з’явиться з виділеним кольором, але зауважте, що положення курсору не зміниться:
Grid.Rows(0).Selected = True
Зробіть це, щоб змінити положення курсору:
Grid.CurrentCell = Grid.Rows(0).Cells(0)
Поєднання рядків вище розмістить курсор і вибере рядок. Це стандартна процедура фокусування та вибору рядка в DataGridView
:
Grid.CurrentCell = Grid.Rows(0).Cells(0)
Grid.Rows(0).Selected = True
DataGridView.Rows
.OfType<DataGridViewRow>()
.Where(x => (int)x.Cells["Id"].Value == pId)
.ToArray<DataGridViewRow>()[0]
.Selected = true;
<GridViewName>.ClearSelection(); ----------------------------------------------------1
foreach(var item in itemList) -------------------------------------------------------2
{
rowHandle =<GridViewName>.LocateByValue("UniqueProperty_Name", item.unique_id );--3
if (rowHandle != GridControl.InvalidRowHandle)------------------------------------4
{
<GridViewName>.SelectRow(rowHandle);------------------------------------ -----5
}
}
Там, де itemList - це список рядків, які слід вибрати у вікні сітки.
Спробуйте це:
datagridview.Rows[currentRow].Cells[0];
datagridview.Rows[currentRow].Cells[0]
Отримує ... клітинку у вказаному місці індексу. Як це вибирає певний діапазон рядків, як вимагається у запитанні?
Ви можете використовувати метод Select, якщо у вас є джерело даних: http://msdn.microsoft.com/en-us/library/b51xae2y%28v=vs.71%29.aspx
Або використовуйте linq, якщо у вас є об’єкти даних
Під час встановлення Вибраного рядка DataGridView під час завантаження розгляньте обробку цього в події DataBindingComplete, оскільки він може бути перезаписаний за замовчуванням.
read-only
- тодіSelectedRows.Clear()
він не працюватиме.