行の選択とセルの選択
選択操作において、行自体の選択と、行に含まれるすべてのセルの選択は一致しません。次のイメージは、左が行の選択を、右が行に含まれるすべてのセルの選択を示します。
![](images/userguide/Grid_MultiSelect_04.png)
行ヘッダをクリックしたとき、行が選択されるか、それともセルが選択されるかはHeaderCell.SelectionModeプロパティの設定によって異なります。詳細は「ヘッダによるセル選択」を参照してください。
![](images/userguide/Grid_MultiSelect_04.png)
行ヘッダをクリックしたとき、行が選択されるか、それともセルが選択されるかはHeaderCell.SelectionModeプロパティの設定によって異なります。詳細は「ヘッダによるセル選択」を参照してください。
選択されたセルの取得
次のコードは、選択されているセルのインデックスと行番号を列挙します。
Imports GrapeCity.Win.MultiRow For Each cell As Cell In GcMultiRow1.SelectedCells Console.WriteLine("選択されたセル: {0},{1}", cell.CellIndex, cell.RowIndex) Next
using GrapeCity.Win.MultiRow; foreach (Cell cell in gcMultiRow1.SelectedCells) { Console.WriteLine("選択されたセル: {0},{1}", cell.CellIndex, cell.RowIndex); }
選択された行の取得
次のコードは、選択されている行のインデックスを列挙します。
選択状態は、行やセル側からみて判定することもできます。次のコードは、Row.Selectedプロパティ(Section.Selectedプロパティ)を使用して、すべての行の中から選択されている行だけを取得します。
Imports GrapeCity.Win.MultiRow For Each row As Row In GcMultiRow1.SelectedRows Console.WriteLine("選択されている行: {0}", row.Index) Next
using GrapeCity.Win.MultiRow; foreach (Row row in gcMultiRow1.SelectedRows) { Console.WriteLine("選択されている行: {0}", row.Index); }
選択状態は、行やセル側からみて判定することもできます。次のコードは、Row.Selectedプロパティ(Section.Selectedプロパティ)を使用して、すべての行の中から選択されている行だけを取得します。
Imports GrapeCity.Win.MultiRow For Each row As Row In GcMultiRow1.Rows If row.Selected = True Then Console.WriteLine("選択されている行: {0}", row.Index) End If Next
using GrapeCity.Win.MultiRow; foreach (Row row in gcMultiRow1.Rows) { if (row.Selected == true) Console.WriteLine("選択されている行: {0}", row.Index); }
選択されたセル数または行数の取得
GcMultiRowコントロールで選択されたセル数を取得するには、SelectedCellCollection.Countプロパティを参照します。また、選択された行数を取得するには、SelectedRowCollection.Countプロパティを参照します。
Console.WriteLine("選択されている行数: {0}", GcMultiRow1.SelectedRows.Count) Console.WriteLine("選択されているセル数: {0}", GcMultiRow1.SelectedCells.Count)
Console.WriteLine("選択されている行数: {0}", gcMultiRow1.SelectedRows.Count); Console.WriteLine("選択されているセル数: {0}", gcMultiRow1.SelectedCells.Count);