2

c#.net2.0で独自のカスタムオートコンプリートスタイルのドロップダウンコントロールを作成しようとしています。開発のスピードを上げるために、私はUserControlとしてコントロールを構築しましたが、この方法でそれを行うという問題にぶつかりました。

カスタム描画ドロップダウンが描画されたら、オプションのリストを表示できるようにUserControl領域のサイズを変更する必要があります。

理想的には、オプションのリストが「フローティング」で描画され、UserControlsの高さと幅(または親が境界を形成することさえ)によって制約されないという点で、drodpownリストの動作を模倣できるようにしたいと思います。ツールチップは、私が望む制約のない「フローティング」のもう1つの例です。

これを実現するために私が考えることができる唯一の方法は、境界線やタイトルバーのない新しいフォームをその場で作成し、ポップアップが必要なときにこれを表示することです。

これを行うためのより良い(しかし迅速な)方法はありますか?

TIA

4

2 に答える 2

1

コントロールを正しくフロートさせるには、フォームまたはNativeWindowを使用する必要があります。フォームをコントロールに従わせるのは簡単ですが、特にシームレスなタブ/キーナビゲーションが必要な場合は、フォーカス/非表示の問題をすべて実装して処理するのがより困難です。

于 2009-04-29T14:18:13.890 に答える
1

ToolStrip Drop Down Button コントロールに基づくコントロールを作成してみることができます。このコントロールには、探している機能があると思います。ToolStrip に基づいてコントロールを作成するためのこのリファレンスを見つけました。これから始めてみてください。

http://blogs.msdn.com/jfoscoding/attachment/1335869.ashx

于 2009-05-01T21:23:29.263 に答える