VB.NETのComboBoxに枠線(ボーダー)を表示する様に拡張したクラス(Border/BorderStyle/BorderWidth)

VB.NETの ComboBox には枠線(ボーダー)を表示するプロパティが標準ではありません。
 ComboBox  FlatStyle  Flat に設定すると、 枠線が白色になりよく見えなくなります。 そこで、 ComboBox の拡張クラスを、 枠線の色、枠線の種類、枠線の幅を追加のプロパティとして作成しました。 クラス名は名前は ComboBoxFrm とします。

以下に ComboBoxFrm クラスのソースを示します。

ウインドウメッセージの処理の中で、 WM_PAINT のタイミングで コンボボックスコントロールの枠を描画しています。
描画にはControlPaintクラスの静的メンバとして用意されている DrawBorder メソッドを使います。
尚、枠線の幅は大きすぎても変な表示になりますので、3までに抑えてあります。

このクラスをフォームに張り付けた時のプロパティのウインドウは以下の様な表示になります。 Cbo1
このクラスをフォームに張り付けたプログラムを実行すると以下の様な表示になります。 Cbo2
世界でいちばん簡単なVisualBasicのe本[最新第4版] VisualBasicの基本と考え方がわかる本
基礎Visual Basic 2015 基礎シリーズ

楽天市場
コメント(0)