PowerTools SPREAD for ASP.NET 8.0J > 開発者の手引き > シートモデル > シートモデルのタイプ > Selection モデル |
Selection モデルは、選択されたセル範囲に関するすべての設定を保持します。 これには、選択されたセル範囲の数を返すメソッド、選択領域を追加および削除するメソッド、選択を解除するメソッド、セルが選択領域に含まれているかどうかを調べるメソッドなどが含まれます。
Selection モデルを形成するクラスは以下のとおりです。
基本クラス | BaseSheetSelectionModel クラス |
---|---|
デフォルトクラス | DefaultSheetSelectionModel クラス |
インタフェース | ISheetSelectionModel インタフェース |
また、Selection モデルは、SheetView クラスの以下のプロパティから参照されます。
基本の Selection モデルは、セルを選択状態にするSetSelection メソッドや、シートの選択領域を追加、解除、および削除するための AddSelection、ClearSelection、RemoveSelection メソッドを提供します。
デフォルトクラス(DefaultSheetSelectionModel クラス)は、シート上で選択されたセルおよびセル範囲を処理し、各選択領域の実際のセルおよびセル範囲の座標を格納します。 SPREADはシートのユーザーインタフェースを処理し、さまざまなイベントハンドラによってSelection モデルを更新します。 Selection モデルは選択されたデータを処理します。たとえば、クリックされたセル(やマウスカーソルの置かれたセルに基づき、選択されたセル範囲を計算します。
Selection モデルは、1つ以上の選択領域を保持している場合のみにビュー ステートに保存されます。
次のサンプルコードは、Selection モデルを使用してセルの選択範囲を取得または設定する例です。
protected void Button1_Click(object sender, EventArgs e) { // 選択範囲を取得します。 FarPoint.Web.Spread.Model.CellRange range = FpSpread1.ActiveSheetView.SelectionModel[0]; System.Diagnostics.Debug.WriteLine(range.Row + "行目から" + range.RowCount + "行、" + range.Column + "列目から" + range.ColumnCount + "列が選択されています。"); } protected void Button2_Click(object sender, EventArgs e) { // 選択範囲を設定します。 FpSpread1.ActiveSheetView.SelectionModel.AddSelection(2, 3, 5, 5); } protected void Button3_Click(object sender, EventArgs e) { // すべてのセルを選択します。 FpSpread1.ActiveSheetView.SelectionModel.SetSelection(-1, -1, -1, -1); } protected void Button4_Click(object sender, EventArgs e) { // 指定のセルの選択を解除します。 FpSpread1.ActiveSheetView.SelectionModel.RemoveSelection(0, 0, 2, 2); }
Protected Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click ' 選択範囲を取得します。 Dim range As FarPoint.Web.Spread.Model.CellRange = FpSpread1.ActiveSheetView.SelectionModel(0) System.Diagnostics.Debug.WriteLine(range.Row & "行目から" & range.RowCount & "行、" & range.Column & "列目から" & range.ColumnCount & "列が選択されています。") End Sub Protected Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click ' 選択範囲を設定します。 FpSpread1.ActiveSheetView.SelectionModel.AddSelection(2, 3, 5, 5); End Sub Protected Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click ' すべてのセルを選択します。 FpSpread1.ActiveSheetView.SelectionModel.SetSelection(-1, -1, -1, -1); End Sub Protected Sub Button4_Click(sender As Object, e As EventArgs) Handles Button4.Click ' 指定のセルの選択を解除します。 FpSpread1.ActiveSheetView.SelectionModel.RemoveSelection(0, 0, 2, 2) End Sub