|
PropertyGridで何か機能が見つからなくて困っているなら、まず本当にPropertyGridを使うべきかどうかってところから考えてみてください。 PropertyGridは開発者向けコントロールという節があります。
さて、PropertyGridはコンテナであり、一種のユーザコントロールです。Controlsを確認すれば子コントロールがいくつか存在しているのが見えます(PropertyGrid.Controlsはインテリセンスに表示されませんけど)。 コントロールのマウスイベントは基本的に親に通知されないので、当然PropertyGrid上の子コントロールのダブルクリックもPropertyGrid.DoubleClick等は発生しません。 // プロパティのリスト部とその下のプロパティの解説スペースの間のスプリッタ部分はPropertyGridが直接実装してるらしく、DoubleClickが発生したりします。 とりあえずぱっと思いつく方法としては、IMessageFilterを使って、WM_LBUTTONDBLCLKのときに祖先コントロールに該当のPropertyGridがあったときにイベントを発生させるとか。 Controlsで引っかかる子コントロールに直接イベントハンドラを関連づけるとか。
|