2

標準のデータグリッドで複数選択を行う方法はありますか? (コンパクトフレームワークを使用しています。)


これは私がやったことです:

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);
    }
}

貧乏人のマルチ選択のようなものですが、うまくいきます。

4

1 に答える 1

0

本質的ではありません。SelectedRows を自分で処理し、カスタム描画する必要があります。

于 2010-05-21T19:46:53.743 に答える