2010-11-24 25 views
12

私はWinFormsアプリケーションを開発しています.1つのフォームでは、GroupBoxを使用して関連するコントロールをグループ化しています。キャプションのスタイルを特定の方法(例:キャプションを太字にする)にしたいと思います。 GroupBoxのスタイリングを変更することで、キャプションをカスタマイズできますが、GroupBox内のコントロールのスタイリングも変更されます。GroupBoxキャプションのコンテンツとは別にスタイルを設定するにはどうすればよいですか?

これまでのところ、多くの子コントロールはありませんので、私は個々にスタイルをデフォルトに戻していますが、もっと良い方法が必要だと思います...しかし、私はそれを理解していませんこれまでのところ。

方法はありますか?

答えて

8

最も簡単な方法は、GroupBox内に別のパネルを配置して、フォントを1回だけリセットすることです。

他にもたくさんのソリューションがありますが、それらはすべてもっと多くのコードを必要とします。これはそれを素敵でシンプルに保ちます。

1

Control.Font(およびその他のスタイル関連のプロパティ)は、明示的に1を設定していない場合は、親にFontを尋ねるように実装されます。明らかに、これは、親スタイルの変更に影響されないように、すべての子コントロールに個別に設定する必要があることを意味します。

GroupBoxのキャプションをオーナーが描いているのを見てください。

0

私はこの問題を解決してデフォルトのグループキャプションを削除し、デフォルトのグループキャプションと同じ場所でグループに新しいラベルウィジェットを追加しました。

関連する問題