有没有办法使用标准数据网格进行多重选择? (我正在使用紧凑的框架。)
这就是我最终做的事情:
readonly List<int> _selectedRows = new List<int>();
private void dataGrid1_MouseUp(object sender, MouseEventArgs e)
{
int c = dataGrid1.CurrentRowIndex;
if (_selectedRows.Contains(c))
{
dataGrid1.UnSelect(c);
_selectedRows.Remove(c);
// Take focus off the current row if I can
if (_selectedRows.Count > 0)
dataGrid1.CurrentRowIndex = _selectedRows[0];
}
else
{
_selectedRows.Add(c);
}
foreach (int rowIndex in _selectedRows)
{
dataGrid1.Select(rowIndex);
}
}
一个穷人的多种选择,但它确实有效。