右クリックでセルを選択するには?(MultiRowSheet)

文書番号 : 21227     文書種別 : 使用方法     最終更新日 : 2006/04/28
文書を印刷する
対象製品
El Tabelle for .NET 3.0J
詳細
El Tabelle の既定の動作では、シート上でマウスの右クリックを行ってもセルを選択することができません。
コンテキストメニューを表示する際などに、選択したセルに基づいた処理を行うには、次のようにクリックしたセルをアクティブにするコーディングを行います。

※ MultiRowSheet.HitTest メソッドは、アセンブリ バージョン v3.2.2006.0414 以降で利用可能です。最新の修正版はこちら からダウンロードできます。

[Visual Basic]
Private Sub MultiRowSheet1_MouseDown(ByVal sender As Object, _
  ByVal e As System.Windows.Forms.MouseEventArgs) Handles MultiRowSheet1.MouseDown
  '右クリックの場合
  If e.Button = MouseButtons.Right Then
    Dim objMRange As New GrapeCity.Win.ElTabelle.MRange()
    'マウスカーソルが指し示すセルを選択する
    If(MultiRowSheet1.HitTest(New Point(e.X, e.Y), objMRange) = _
      GrapeCity.Win.ElTabelle.SheetArea.Cell)
      'アクティブセルを変更する
      MultiRowSheet1.ActivePosition = objMRange.TopLeftPosition
    End If
  End If
End Sub


[C#]
private void multiRowSheet1_MouseDown(object sender, MouseEventArgs e)
{
  GrapeCity.Win.ElTabelle.MRange objMRange =
    new GrapeCity.Win.ElTabelle.MRange();
  //マウスカーソルが指し示すセルを選択する
  if (multiRowSheet1.HitTest(new Point(e.X, e.Y), out objMRange) ==
    GrapeCity.Win.ElTabelle.SheetArea.Cell)
  {
    //アクティブセルを変更する
    multiRowSheet1.ActivePosition = objMRange.TopLeftPosition;
  }
}
関連情報
キーワード
HowTo

この文書は、以前は次のFAQ IDで公開されていました : 8875