フォームのフォントを設定すると、DataGridViewは同じフォントを使用します。DataGridViewがWindowsフォームのフォントを採用するのはなぜですか?
なぜDataGridViewはフォームのフォントを採用していますか? DataGridView.Font
のドキュメントから
フォームのフォントを設定すると、DataGridViewは同じフォントを使用します。DataGridViewがWindowsフォームのフォントを採用するのはなぜですか?
なぜDataGridViewはフォームのフォントを採用していますか? DataGridView.Font
のドキュメントから
:
Font
プロパティはアンビエントプロパティです。アンビエントプロパティは、設定されていない場合、親コントロールから取得されるコントロールプロパティです。たとえば、Button
は、デフォルトではForm
という親と同じBackColor
となります。周囲のプロパティの詳細については、AmbientProperties
クラスまたはControl
クラス概要を参照してください。
つまり、ドキュメントのとおりに動作しているように見えます。フォームのフォントより以外ののフォントを使用する場合は、プロパティを明示的に設定します。
フォームにデフォルトのフォントがありますが、DataGridView
に別のフォントを使用したい場合、この同じ問題が発生しました。
これを修正するには、フォントを変更するLoadイベントを配置します。
private void Form1_Load(object sender, System.EventArgs e)
{
// set to your font you want.
this.dataGridView1.DefaultCellStyle.Font = new Font("Tahoma", 15);
}
それともGroupBox
の内部DataGridView
を置き、私が欲しいのフォントにGroupBox
を設定する - この修正プログラムは醜いですが、それは動作します。
すべてのDefaultCellStyleプロパティを設定しましたが、フォームのフォントは引き続き使用されています。 – Rookian
@Rookian:これが初めてDefaultCellStyleに言及したことを考えると、あなたのポストを短くて完全な例で更新して、別のフォントを使うべき理由を説明する良い時期になるでしょう。 –
これは機能しました!私は少し間違いを犯した。ご説明ありがとうございます。 – Rookian