方法: Windows フォーム DataGridView コントロールのデータの書式を設定する
以下の手順では、DataGridView コントロールと、コントロール内の特定の列の DefaultCellStyle プロパティを使用して、セル値の基本的な書式設定を行う方法について説明します。 高度なデータ書式設定について詳しくは、「方法: Windows フォーム DataGridView コントロールのデータの書式設定をカスタマイズする」を参照してください。
通貨と日付の値を書式設定するには
DataGridViewCellStyle の Format プロパティを設定します。 次のコード例では、列の DefaultCellStyle プロパティを使用して、特定の列の形式を設定しています。
UnitPrice
列の値は、現在のカルチャに固有の通貨書式で表示され、負の値はかっこで囲まれます。ShipDate
列の値は、現在のカルチャに固有の短い日付形式で表示されます。 Format の値について詳しくは、「型の書式設定」を参照してください。this.dataGridView1.Columns["UnitPrice"].DefaultCellStyle.Format = "c"; this.dataGridView1.Columns["ShipDate"].DefaultCellStyle.Format = "d";
Me.dataGridView1.Columns("UnitPrice").DefaultCellStyle.Format = "c" Me.dataGridView1.Columns("ShipDate").DefaultCellStyle.Format = "d"
null データベース値の表示をカスタマイズするには
DataGridViewCellStyle の NullValue プロパティを設定します。 次のコード例では、DataGridView.DefaultCellStyle プロパティを使用して、DBNull.Value と等しい値を含むすべてのセルに "no entry" と表示します。
this.dataGridView1.DefaultCellStyle.NullValue = "no entry";
Me.dataGridView1.DefaultCellStyle.NullValue = "no entry"
テキストベースのセルで折り返しを有効にするには
DataGridViewCellStyle の WrapMode プロパティを DataGridViewTriState 列挙値のいずれかに設定します。 次のコード例では、DataGridView.DefaultCellStyle プロパティを使用して、コントロール全体のラップ モードを設定しています。
this.dataGridView1.DefaultCellStyle.WrapMode = DataGridViewTriState.True;
Me.dataGridView1.DefaultCellStyle.WrapMode = DataGridViewTriState.True
DataGridView セルのテキストの配置を指定するには
DataGridViewCellStyle の Alignment プロパティを DataGridViewContentAlignment 列挙値のいずれかに設定します。 次のコード例では、DefaultCellStyle 列のプロパティを使用して、特定の列の配置を設定しています。
this.dataGridView1.Columns["CustomerName"].DefaultCellStyle .Alignment = DataGridViewContentAlignment.MiddleRight;
Me.dataGridView1.Columns("CustomerName").DefaultCellStyle _ .Alignment = DataGridViewContentAlignment.MiddleRight
例
private void SetFormatting()
{
this.dataGridView1.Columns["UnitPrice"].DefaultCellStyle.Format = "c";
this.dataGridView1.Columns["ShipDate"].DefaultCellStyle.Format = "d";
this.dataGridView1.Columns["CustomerName"].DefaultCellStyle
.Alignment = DataGridViewContentAlignment.MiddleRight;
this.dataGridView1.DefaultCellStyle.NullValue = "no entry";
this.dataGridView1.DefaultCellStyle.WrapMode =
DataGridViewTriState.True;
}
Private Sub SetFormatting()
With Me.dataGridView1
.Columns("UnitPrice").DefaultCellStyle.Format = "c"
.Columns("ShipDate").DefaultCellStyle.Format = "d"
.Columns("CustomerName").DefaultCellStyle.Alignment = _
DataGridViewContentAlignment.MiddleRight
.DefaultCellStyle.NullValue = "no entry"
.DefaultCellStyle.WrapMode = DataGridViewTriState.True
End With
End Sub
コードのコンパイル
これらの例には以下のものが必要です。
UnitPrice
という名前の列、ShipDate
という名前の列、およびCustomerName
という名前の列を含んだ、dataGridView1
という名前の DataGridView コントロール。System、System.Drawing、および System.Windows.Forms の各アセンブリへの参照。
信頼性の高いプログラミング
最大限のスケーラビリティを実現するには、各要素のスタイルのプロパティを個別に設定するのではなく、同じスタイルを使用する複数の行、列、またはセルで DataGridViewCellStyle オブジェクトを共有してください。 詳細については、「 Windows フォーム DataGridView コントロールを拡張するための推奨される手順」を参照してください。
関連項目
.NET Desktop feedback