MESCIUS SPREAD for Windows Forms 17.0J サンプルコード集
セルのクリックおよびダブルクリック時に発生するイベント

シート上の任意のセルをクリックした場合にはCellClickイベント(ダブルクリックした場合にはCellDoubleClickイベント)が発生します。例えばセルのダブルクリックによって、セルは編集モードに切り替わりますが、イベントをキャンセルすることでこの動作を抑制することも可能です。

  • イベントハンドラのコードは Visual Studioで適切に生成する必要があります。
  • イベントのキャンセルは.NET開発における一般的な手法です。
  • SPREADコントロール自体のClickイベント(またはDoubleClickイベント)は発生しません。
  • セルが編集モードに切り替わった以降、CellClickイベントは発生しません。
  • 編集中セルではCellDoubleClickイベントが発生しません。
  • 両イベントは以下のタイミングで発生します。

    【CellClickイベント】
    (1)マウスを押す ← この時点で発生
    (2)マウスを放す

    【CellDoubleClickイベント】
    (1)マウスを押す
    (2)マウスを放す
    (3)マウスを押す ← この時点で発生
    (4)マウスを放す

 private void fpSpread1_CellClick(object sender, FarPoint.Win.Spread.CellClickEventArgs e)
 {

   if (e.ColumnHeader == true)
   {
      Console.WriteLine("列ヘッダがクリックされました");
   }

   if (e.RowHeader == true)
   {
      Console.WriteLine("行ヘッダがクリックされました");
   }

   Console.WriteLine("クリックされた列インデックス:" + e.Column.ToString());
   Console.WriteLine("クリックされた行インデックス:" + e.Row.ToString());

   Console.WriteLine("クリックされたX座標:" + e.X.ToString());
   Console.WriteLine("クリックされたY座標:" + e.Y.ToString());

 }

 private void fpSpread1_CellDoubleClick(object sender, FarPoint.Win.Spread.CellClickEventArgs e)
 {

   //イベントをキャンセルします
   e.Cancel = true;

 }
 Private Sub FpSpread1_CellClick(ByVal sender As Object, ByVal e As FarPoint.Win.Spread.CellClickEventArgs) Handles FpSpread1.CellClick

   If e.ColumnHeader = True Then
      Console.WriteLine("列ヘッダがクリックされました")
   End If

   If e.RowHeader = True Then
      Console.WriteLine("行ヘッダがクリックされました")
   End If

   Console.WriteLine("クリックされた列インデックス:" + e.Column.ToString)
   Console.WriteLine("クリックされた行インデックス:" + e.Row.ToString)

   Console.WriteLine("クリックされたX座標:" + e.X.ToString)
   Console.WriteLine("クリックされたY座標:" + e.Y.ToString)

 End Sub

 Private Sub FpSpread1_CellDoubleClick(ByVal sender As Object, ByVal e As FarPoint.Win.Spread.CellClickEventArgs) Handles FpSpread1.CellDoubleClick

   'イベントをキャンセルします
   e.Cancel = True

 End Sub

 

 


© MESCIUS inc. All rights reserved.