本項ではテキストコントロールの外観のカスタマイズについて解説します。
テキストコントロールでは、以下の状態についてそれぞれ文字色と背景色を設定することが可能です。
状態 | プロパティ |
---|---|
フォーカスを持っている | ActiveBackColor、ActiveForeColor |
無効(EnabledプロパティがFalse) | DisabledBackColor、DisabledForeColor |
読み取り専用(ReadOnlyプロパティがTrue) | ReadOnlyBackColor、ReadOnlyForeColor |
次のサンプルコードは、コントロールがフォーカスを取得したときの背景色および文字色を設定する例です。
' フォーカス取得時の背景色を設定します。 GcTextBox1.ActiveBackColor = Color.Yellow ' フォーカス取得時の文字色を設定します。 GcTextBox1.ActiveForeColor = Color.Blue
// フォーカス取得時の背景色を設定します。 gcTextBox1.ActiveBackColor = Color.Yellow; // フォーカス取得時の文字色を設定します。 gcTextBox1.ActiveForeColor = Color.Blue;
DisplayAlignment プロパティを使用すると、コントロールにフォーカスがないときのテキストの配置方法を設定することができます。
コントロールがアクティブな入力中(コントロールにフォーカスが存在する場合)は、テキストは、ContentAlignment プロパティで設定された整列方法に従って表示されます。
Multiline プロパティがTrueに設定されている場合は、DisplayAlignment プロパティの設定は有効になりません。 |
以下は表示時は行の両端に余白のある均等割り付けに、入力時は中央中段に表示する例です。
' 表示時の書式を設定します。 GcTextBox1.DisplayAlignment = GrapeCity.Win.Editors.DisplayAlignment.DistributedWithWhiteSpace ' 入力時の書式を設定します。 GcTextBox1.ContentAlignment = ContentAlignment.MiddleCenter
// 表示時の書式を設定します。 gcTextBox1.DisplayAlignment = GrapeCity.Win.Editors.DisplayAlignment.DistributedWithWhiteSpace; // 入力時の書式を設定します。 gcTextBox1.ContentAlignment = ContentAlignment.MiddleCenter;
FlatStyle プロパティを使用すると、コントロールの外観のスタイルを変更することができます。
FlatStyleの値 | 説明 | 外観 |
---|---|---|
Flat | フラットに(平面的に)表示されます。 | |
Popup | マウスポインタをボタン上に移動すると外観がフラットから3Dに変わります。 | |
Standard | 3Dで(立体的に)表示されます。 | |
System | オペレーティングシステムによって決定されます。 | |
ActiveFlat | Office XP形式のフラットスタイルが適用されます。 | |
Professional | ToolStripに適用される視覚スタイルが適用されます。 | |
Office2007Blue | Office2007Blue形式のスタイルが適用されます。 | |
Office2007Black | Office2007Black形式のスタイルが適用されます。 | |
Office2007Silver | Office2007Silver形式のスタイルが適用されます。 |
FlatStyle プロパティの値が、Flat、PopUp、Standard、Systemのときは、BorderStyle プロパティを使用して境界線のスタイル変更することができます。
また、BorderStyle プロパティがFixedSingle のときは、SingleBorderColor プロパティを使用して境界線の色を設定することができます。
入力領域内でテキストの水平および垂直方向の整列位置を指定するには、ContentAlignment プロパティを使用します。
また、Padding プロパティを使うことで、コントロールの上下左右の端からデータ入力領域の端までの距離をピクセル単位で調整できます。
以下に、テキストの配置位置を設定するサンプルコードを示します。
Imports GrapeCity.Win.Editors ' コントロールのパディングをそれぞれ左=4、上=3、右=4、下=3に設定します。 GcTextBox1.Padding = New Padding(4, 3, 4, 3) ' テキストの整列位置を垂直方向は中央、水平方向は左に設定します。 GcTextBox1.ContentAlignment = ContentAlignment.MiddleLeft
using GrapeCity.Win.Editors; // コントロールのパディングをそれぞれ左=4、上=3、右=4、下=3に設定します。 gcTextBox1.Padding = new Padding(4, 3, 4, 3); // テキストの整列位置を垂直方向は中央、水平方向は左に設定します。 gcTextBox1.ContentAlignment = ContentAlignment.MiddleLeft;
コントロールが単一行表示(Multiline プロパティがFalse)に設定されているとき、AutoSize プロパティを使用するとコントロールの高さが自動的に調整されます。
コントロールの高さは、Font プロパティで設定されたフォントサイズとコントロールのPadding プロパティによって決定されます。