PowerTools SPREAD for ASP.NET 8.0J > 開発者の手引き > 編集、検証、選択 > 選択 > 選択方法の指定 |
操作モードが読み取り専用(ReadOnly)以外のとき、ユーザーはセルや行を選択することが可能です。行モード(RowMode)、単一選択モード(SingleSelect)、複数選択モード(MultiSelect)および拡張選択モード(ExtendedSelect)のときは、行単位での選択が許可されます。
標準モード(Normal)のときは、行、列、シート全体など、複数のセルを選択することが可能となりますが、単一セルのみ選択を許可するのか、セル範囲の選択を可能にするかなど、ユーザーにどのような選択を許可するかを設定することができます。
また、複数のセルを選択するとき、列ヘッダや行ヘッダ、あるいはシートコーナーのクリックによりセルを選択できるかどうかといった、セルの選択操作を指定することも可能です。
ユーザーに何の選択を許可するかを設定するには、SheetView クラスのSelectionPolicy プロパティを使用します。SelectionPolicy プロパティはSelectionPolicy 列挙体を参照し、次のような動作を許可します。
SelectionPolicy の値 | 動作 |
---|---|
MultiRange | 複数のセル、セル範囲を選択することが可能です。[Ctrl]キーを押下し複数の領域を選択できます。 |
Range | セル範囲の選択が可能です。ただし、複数のセル範囲やセルを選択することはできません。 |
Single | 単一セルのみ、選択が可能です。複数のセルやセル範囲を選択することはできませsん。 |
また、セルの選択操作を設定するには、FpSpread クラスのSelectionBlockOptions プロパティを使用します。SelectionBlockOptions プロパティはSelectionBlockOptions 列挙体を参照します。この列挙体はビットフィールドで、複数の値を設定できます。
SelectionBlockOptions の値 | 動作 |
---|---|
Cells | セル範囲の選択を許可します。 |
Columns | 列ヘッダのクリックによるセル選択を許可します。 |
Rows | 行ヘッダのクリックによるセル選択を許可します。 |
Sheet | シートコーナーのクリックによるセル選択を許可します。 |
None | 単一セル以外の選択を許可しません。 |
なお、これらのプロパティは、OperationMode プロパティがOperationMode.Normalのときに有効です。
次のサンプルコードは、複数セルとセル範囲の選択と、ヘッダクリックによる選択操作を許可します。
FpSpread1.ActiveSheetView.SelectionPolicy = FarPoint.Web.Spread.Model.SelectionPolicy.MultiRange; FpSpread1.ActiveSheetView.OperationMode = FarPoint.Web.Spread.OperationMode.Normal; FpSpread1.SelectionBlockOptions = FarPoint.Web.Spread.SelectionBlockOptions.Rows | FarPoint.Web.Spread.SelectionBlockOptions.Columns;
FpSpread1.ActiveSheetView.SelectionPolicy = FarPoint.Web.Spread.Model.SelectionPolicy.MultiRange FpSpread1.ActiveSheetView.OperationMode = FarPoint.Web.Spread.OperationMode.Normal FpSpread1.SelectionBlockOptions = FarPoint.Web.Spread.SelectionBlockOptions.Rows | FarPoint.Web.Spread.SelectionBlockOptions.Columns
エンドユーザーに許可する選択操作とは別に、コードを使用して選択領域を処理できます。 コードから、選択領域を追加したり、既存の選択領域の1つまたはすべてを削除したりできます。 コードを使用して、Selectionモデルに対して選択領域の追加または削除を行うには、AddSelectionおよびClearSelectionメソッドを使用します。