True DBGrid for WinForms
組み込みの名前付きスタイル
外観とスタイル > 組み込みの名前付きスタイル

グリッドを作成すると、最初に一連の組み込みの名前付きスタイルが指定されます。これらのスタイルによって、さまざまなグリッドの表示方法が制御されます。たとえば、Heading スタイルは、列のヘッダの表示に使用される属性を決定します。設計時には、GridStyleCollection エディタで組み込みの名前付きスタイルを変更することで、グリッド全体の外見を変更できます。実行時には、GridStyleCollection を使用して、同じ名前付きスタイルのセットにアクセスできます。すべてのグリッドは、最初に 13 個の組み込みスタイルを持っています。これらのスタイルは、次のグリッド要素の表示方法を制御します。

要素 説明
Caption グリッドとスプリットのキャプションバー
Editor グリッド内のセルエディタ
EvenRow 偶数行にあるデータセル
Filter Bar フィルタバー列にあるデータ
Footer 列のフッタ
Group グリッドのグループ化領域にあるグループ列
Heading 列のヘッダ
HighlightRow 強調表示されている行にあるデータセル
Inactive 列のヘッダ(他の列にフォーカスがある場合)
Normal 選択も強調表示もされていない行にあるデータセル
OddRow 奇数行にあるデータセル
Record Selector レコードセレクタ列のデータ
Selected 選択されている行にあるデータセル

選択されている行とは、コードまたはユーザーの操作によって SelectedRowCollectionにブックマークが追加されている行です。強調表示されている行とは、 MarqueeStyle プロパティが MarqueeEnum.HighlightRow またはMarqueeEnum.HighlightRowRaiseCellに設定されている現在の行です。

EvenRow スタイルおよび OddRow スタイルは、AlternatingRows プロパティが True に設定されている場合にだけ使用できます。

名前付きスタイルのデフォルト値

Microsoft Word と同様に、C1TrueDBGridStyle オブジェクトも、別のスタイルの属性を継承したり、親スタイルとして参照されます。新しく作成されたグリッドでは、Normal スタイルがすべての名前付きスタイルの親スタイルになります。このスタイルのデフォルトのプロパティを次に示します。

プロパティ 設定
Alpha 255
BackColor System.Drawing.Color.White
BackColor2 System.Drawing.Color.White
BackgroundImage None
BackgroundPictureDrawMode BackgroundPictureDrawModeEnum.Stretch
Font Microsoft Sans Serif, 8.25pt
ForeColor System.Drawing.Color.Black
ForegroundImage None
ForeGroundPicturePosition ForegroundPicturePositionEnum.LeftOfText
GammaCorrection False
GradientMode None
HorizontalAlignment AlignHorzEnum.General
Locked False
Padding 0, 0, 0, 0
Trimming Character
VerticalAlignment AlignVertEnum.Top
WrapText False

Heading スタイルと Footing スタイルも同様に定義されます。これらのスタイルは Normal を継承しており、次のプロパティを上書きしています。

プロパティ 設定
BackColor System.Drawing.SystemColors.Control
ForeColor System.Drawing.Color.Black
VerticalAlignment AlignVertEnum.Center

Heading スタイルは、次のプロパティも上書きしています。Footing スタイルは、このプロパティを上書きしていません。

プロパティ 設定
WrapText True

Selected スタイルも Normal を継承し、次に示す2つのカラープロパティを上書きしています。

プロパティ 設定
BackColor System.Drawing.SystemColors.Highlight
ForeColor System.Drawing.SystemColors.HighlightText

HighlightRow スタイルも同様です。このスタイルは、デフォルトの Normal スタイルの設定とは逆の色を使用します。

プロパティ 設定
BackColor System.Drawing.SystemColors.Text
ForeColor System.Drawing.SystemColors.HighlightText

EvenRowOddRowFilterBar  の各スタイルは Normal を継承しますが、EvenRow スタイルには上書きされるプロパティがあります。

プロパティ 設定
BackColor System.Drawing.Color.Aqua

Normal を直接継承しないスタイルは、CaptionRecordSelector だけです。これらは Heading を継承します。グリッドとスプリットのキャプションがデフォルトで中央揃えされるのは、Caption スタイルの次のプロパティがカスタマイズされているためです。

プロパティ 設定
HorizontalAlignment AlignHorzEnum.Center

名前付きスタイルの継承

名前付きスタイルが継承されるしくみについて確認します。グリッドをフォームに配置し、グリッドのCaption プロパティとデフォルトの列を設定します。デフォルトの列の FooterText プロパティを設定し、グリッドのColumnFootersプロパティを True に設定すると、グリッドは次のように表示されます。

GridStyleCollection エディタで、Normal ノードを展開し、Font プロパティを選択してBoldボックスを ON にします。列ヘッダ、列フッタ、グリッドのキャプションのすべてが太字になります。これは、すべての組み込みスタイルが Normal スタイルまたは Normal の子スタイルを継承するためです。

次に、Heading ノードを展開し、ForeColor プロパティを選択します。カラータブのWebを選択し、次にNavyを選択します。列ヘッダとグリッドのキャプションバーの両方のテキストが白色になります。これは、Caption スタイルが Heading スタイルから色のプロパティを継承するためです。列フッタは変化しません。これは、Footer スタイルが、Heading ではなく、Normal を継承しているためです。

最後に、Caption ノードを展開し、BackColor プロパティを選択します。カラータブのWebを選択し、次にAliceBuleを選択します。列ヘッダの背景色が変化しないこと、および Caption スタイルが引き続き親スタイルの Heading からテキストの色を継承していることがわかります。

名前付きスタイルを変更する

グリッド全体の外見は、設計時に .NET のコレクションエディタを使用して、GridStyleCollectionを変更することによって変更できます。たとえば、すべての列ヘッダでキャプションのテキストを中央揃えにするには、組み込みの Heading スタイルの HorizontalAlignment プロパティをAlignHorzEnum.Center に変更します。

ただし、必ずしも GridStyleCollection エディタを使用したり、GridStyleCollection の名前付きメンバをコード内で操作する必要はありません。グリッドおよびそのコンポーネントオブジェクトは、Style オブジェクトを返すさまざまなプロパティを公開しています。次の項で説明するように、これらのオブジェクトを直接操作することによって、グリッドの外見を調整できます。詳細については、Using the C1TrueDBGrid Style Editorを参照してください。