0

ここで説明する手法を使用して、ツールストリップドロップダウンでユーザーコントロールをホストしています: http://windowsclient.net/blogs/faqs/archive/2006/07/12/how-can-i-add-a-user-control- to-a-toolstrip.aspx

この手法は、私がホストしているユーザーコントロールにいくつかのコンボボックスがあるという事実を除いて、美しく機能します。それらのいくつかは、ユーザーコントロールの表面の外にドロップダウンします。ユーザーコントロールの表面の外側にあるコンボアイテムをクリックすると、メニューアイテムが閉じます(メニューをドロップダウンしてから、メニューの外側のウィンドウの任意の場所をクリックした場合と同様です)。

確かに、コンボのドロップダウンアイテムが選択されたときにタブストリップドロップダウンが閉じないようにする方法がいくつかあります。

4

1 に答える 1

0

私はその問題の解決策を見つけました。それほどエレガントではありませんが、機能的です。ユーザーコントロールを超えて拡張するコンボについては、それらがいつ開いているかを追跡するだけです。ドロップダウンとして割り当てる独自のToolStripDropDown派生クラスを作成しました。次に、2つのコンボのいずれかが開いているかどうかを確認し、開いている場合は、ドロップダウンのOnClosingメソッドをオーバーライドして、閉じをキャンセルします。(これまでのところ)望ましくない副作用がなくても正常に機能しているようです。

于 2011-10-07T15:14:37.420 に答える