PowerTools MultiRow for Windows Forms 8.0J
CellContextMenuStripNeeded イベント

セルのショートカットメニューが表示されるときに発生します。
構文
Public Event CellContextMenuStripNeeded As EventHandler(Of CellContextMenuStripNeededEventArgs)
public event EventHandler<CellContextMenuStripNeededEventArgs> CellContextMenuStripNeeded
イベント データ

イベント ハンドラが、このイベントに関連するデータを含む、CellContextMenuStripNeededEventArgs 型の引数を受け取りました。次の CellContextMenuStripNeededEventArgs プロパティには、このイベントの固有の情報が記載されます。

プロパティ解説
CellIndexSection内でのセルのインデックスを取得します。 GrapeCity.Win.MultiRow.CellEventArgsから継承されます。
CellNameセルの名前を取得します。 GrapeCity.Win.MultiRow.CellEventArgsから継承されます。
ContextMenuStripGcMultiRow.CellContextMenuStripNeededイベントを発生させたセルのショートカットメニューを取得または設定します。  
RowIndexイベントが発生したオーナーRowのインデックスを取得します。 GrapeCity.Win.MultiRow.CellEventArgsから継承されます。
Scopeイベントが発生したセルの領域を取得します。 GrapeCity.Win.MultiRow.CellEventArgsから継承されます。
SectionIndexイベントが発生したオーナーSectionのインデックスを取得します。 GrapeCity.Win.MultiRow.CellEventArgsから継承されます。
解説

このイベントは、VirtualModeプロパティがtrueの場合、またはDataSourceプロパティがnull 参照 (Visual Basicでは Nothing)でない場合にのみ発生します。

CellContextMenuStripNeededイベントを処理すると、ユーザーがセルを右クリックしたときに、ハンドラで指定したショートカットメニューが表示されます。これは、セルの現在の状態または値に基づいて決定されたショートカットメニューを表示する場合に役立ちます。

CellContextMenuStripNeededイベントは、Cell.ContextMenuStripプロパティの値が取得されたとき(プログラムによって取得されたとき、またはユーザーがセルを右クリックしたとき)にも発生します。

CellEventArgs.CellIndexプロパティとCellEventArgs.RowIndexプロパティを使用してセルの状態または値を確認し、その情報に基づいてCellContextMenuStripNeededEventArgs.ContextMenuStripプロパティを変更できます。このプロパティはセルのCell.ContextMenuStripプロパティの値で初期化されます(その後、このイベントの値によってオーバーライドされます)。

大量のデータを操作しているとき、複数のセルのCell.ContextMenuStrip値を設定するとパフォーマンスペナルティが生じますが、CellContextMenuStripNeededイベントを処理することでこのような事態を回避できます。

また、個々のセルではなく個々のセクションにショートカットメニューを指定することもできます。そのためには、セクションのSection.ContextMenuStripプロパティを設定するか、SectionContextMenuStripNeededイベントを処理します。セルのCell.ContextMenuStripプロパティを設定すると、セクションのSection.ContextMenuStripプロパティの設定がオーバーライドされます。また、CellContextMenuStripNeededイベントは、SectionContextMenuStripNeededイベントとセクションのSection.ContextMenuStripプロパティ設定の両方をオーバーライドします。ただし、セクションのショートカットメニューがオーバーライドされないように、セルのショートカットメニューにnull 参照 (Visual Basicでは Nothing)を指定することもできます。

参照

GcMultiRow クラス
GcMultiRow メンバ

 

 


© 2008-2015 GrapeCity inc. All rights reserved.