MESCIUS SPREAD for Windows Forms 15.0J
選択領域の処理

ユーザーがセル範囲を選択したときに、このセル範囲をシートの他のセルと区別できるように、他のセルと異なる背景色および前景色で表示できます。このセル範囲を選択領域と呼びます。選択領域には、コードで制御できる多数の属性があります。また、コードから選択領域を追加または削除でき、現在の選択領域を調べることもできます。ここでは、選択領域に対してコードから実行できる処理について説明します。

コードで実行する処理 使用するメンバ
選択領域の追加 SheetViewクラスのAddSelectionメソッドを使用
選択されているすべてのセル範囲を取得 SheetViewクラスのGetSelectionsメソッドを使用
特定の選択領域を参照 SheetViewクラスのGetSelectionメソッドを使用を使用
選択領域をすべて解除 SheetViewクラスのClearSelectionメソッドを使用
特定の選択領域を解除 SheetViewクラスのRemoveSelectionメソッドを使用
アクティブセルの設定 SheetViewクラスのSetActiveCellメソッドを使用
clearSelectionパラメータ(ブール型)で、他のすべての選択領域を選択解除するかどうかを設定します
コントロールがフォーカスを失ったときに選択領域の強調表示を維持する FpSpreadクラスのRetainSelectionBlockプロパティを使用
コントロールがフォーカスを取得したときにアクティブセルを移動する FpSpreadクラスのMoveActiveOnFocusプロパティを使用
シートで選択状態が変化したときに処理を実装する FpSpreadクラスのSelectionChangedイベントを使用

セル範囲を選択するには、シートの選択モデル(ISheetSelectionModelインタフェースを実装したクラス)のSetSelectionメソッドを使用する方法もあります。

サンプルコード

次のサンプルコードは、シートの選択モデルを使用して、全セルを選択します。

C#
コードのコピー
fpSpread1.ActiveSheet.Models.Selection.SetSelection(0, 0, fpSpread1.ActiveSheet.RowCount, fpSpread1.ActiveSheet.ColumnCount);
Visual Basic
コードのコピー
FpSpread1.ActiveSheet.Models.Selection.SetSelection(0, 0, FpSpread1.ActiveSheet.RowCount, FpSpread1.ActiveSheet.ColumnCount)

ユーザーがヘッダをクリックして選択したときなど、行または列内の全セルが選択されているときには、DefaultSheetSelectionModelクラス(およびIDisjointSelectionインタフェース)のGetSelectionsメソッドは、RowCountおよびColumnCountプロパティの両方に対して-1を返します。

選択領域の基本モデルの詳細については、「Selection モデル」を参照してください。

設定方法

選択領域を追加するには、SheetViewクラスのAddSelectionメソッドを使用して、必要なパラメータを指定します。

サンプルコード

次のサンプル コードは、2つのセル範囲を選択します。

C#
コードのコピー
// 複数のセル範囲の選択を許可するようにシートを設定します。
fpSpread1.Sheets[0].SelectionPolicy = FarPoint.Win.Spread.Model.SelectionPolicy.MultiRange;
// C3からD4までのセルを選択します。
fpSpread1.Sheets[0].AddSelection(2, 2, 2, 2);
// F6からH8までのセルを選択します。
fpSpread1.Sheets[0].AddSelection(5, 5, 3, 3);
Visual Basic
コードのコピー
' 複数のセル範囲の選択を許可するようにシートを設定します。
FpSpread1.Sheets(0).SelectionPolicy = FarPoint.Win.Spread.Model.SelectionPolicy.MultiRange
' C3からD4までのセルを選択します。
FpSpread1.Sheets(0).AddSelection(2, 2, 2, 2)
' F6からH8までのセルを選択します。
FpSpread1.Sheets(0).AddSelection(5, 5, 3, 3)
参照

 

 


© MESCIUS inc. All rights reserved.