ユーザーに対して、選択範囲をドラッグして移動する操作を有効にできます。この操作が有効な場合、ユーザーが選択範囲の枠にマウスを移動すると、マウスポインタが移動を表す形状に変わります。この状態でドラッグ&ドロップすると選択範囲を移動できます。
この操作を有効にするには、コントロールの CanUserDragCell プロパティを設定します。
ドラッグ移動は移動先のセルに値を設定します。読み取り専用のセルに対して移動することはできません。
セルをドラッグ移動すると、以下のイベントが発生します。
イベント | 説明 |
---|---|
DragEnding | ドラッグ操作が終了する直前に発生します。 |
DragEnded | ドラッグ操作が終了したあとに発生します。 |
このとき、イベントパラメーターDragEventArgs クラスのDragType プロパティには、MoveCells が設定されます。ドラッグ前およびドラッグ後のセル範囲は、SourceRange およびTargetRange プロパティから取得できます。
次のサンプルコードは、セルがドラッグ移動されたとき、移動前と移動後の先頭セルの位置を取得します。
C# |
コードのコピー |
---|---|
void gcSpreadGrid1_DragEnded(object sender, GrapeCity.Windows.SpreadGrid.DragEventArgs e) { if (e.DragType == DragType.MoveCells) { Console.WriteLine("[{0:D}, {1:D}]のセルが[{2:D}, {3:D}]に移動しました", e.SourceRange.Row, e.SourceRange.Column, e.TargetRange.Row, e.TargetRange.Column); } } |
Visual Basic |
コードのコピー |
---|---|
Private Sub GcSpreadGrid1_DragEnded(sender As Object, e As DragEventArgs) Handles GcSpreadGrid1.DragEnded If e.DragType = DragType.MoveCells Then Console.WriteLine("[{0:D}, {1:D}]のセルが[{2:D}, {3:D}]に移動しました", e.SourceRange.Row, e.SourceRange.Column, e.TargetRange.Row, e.TargetRange.Column) End If End Sub |