C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

DataGridViewのCellContentClick


(過去ログ 130 を表示中)

[トピック内 1 記事 (1 - 1 表示)]  << 0 >>

■77162 / inTopicNo.1)  DataGridViewのCellContentClick
  
□投稿者/ イーピン (1回)-(2015/09/18(Fri) 12:46:48)

分類:[VB.NET/VB2005 以降] 

DataGridViewのCellContentClickで奇妙な現象を見つけました。
(使用しているのはVB2008です。)

DataGridViewには、左からチェックボックス・ボタン・テキスト×2の列
(テキストの左列は編集可能)を用意し、データソースは使わず、
直接行データを追加しています。
また、編集可能なテキスト列のEditModeプロパティは、デフォルトのEditOnKeystrokeOrF2です。

さて、DataGridViewにデータが表示されている状態で、
編集可能な任意のテキストセルを編集モードにします。
その際に、編集中セルのテキストの任意の箇所でマウスダウンし、
それをドラッグしたまま別の列のセルの上でマウスアップすると、
CellContentClickイベントが走ってしまいます。
しかも、引数のDataGridViewCellEventArgsの行(e.RowIndex)と列(e.ColumnIndex)には
マウスアップしたセルのものが入ってしまいます。

ボタン列のクリックを検知するために、このCellContentClickイベントを使っているのですが、
何かの拍子でボタン列上でマウスアップしてしまうと、ボタンが押された時に実行する処理が
走ってしまいます。
なお、編集状態でないセルをドラッグし、別の列のセル上でマウスアップしても
この問題は発生しませんでした。


何かのサイト(忘れてしまいました)で、DataGridViewのボタンセルのクリックを検知するには
CellContentClickを使う、と紹介されていましたので、ずっとCellContentClickを使っていましたが、
これは、CellContentClickの仕様なのでしょうか?
何かこのような情報をお持ちの方はいらっしゃいますか?

なお、CellClickイベントに変更すれば、上記のような現象は起こらないようなのですが、
CellClickイベントでよいのか分かりません。

どうぞアドバイスをお願いいたします。
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -