次の方法で共有


方法: Windows フォーム DataGridView コントロールでデータを書式設定する

次の手順では、DefaultCellStyle コントロールの DataGridView プロパティとコントロール内の特定の列を使用したセル値の基本的な書式設定を示します。 高度なデータの書式設定の詳細については、「方法: Windows フォーム DataGridView コントロールでデータの書式設定をカスタマイズする」を参照してください。

通貨と日付の値を書式設定するには

  • FormatDataGridViewCellStyle プロパティを設定します。 次のコード例では、列の 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 データベース値の表示をカスタマイズするには

  • NullValueDataGridViewCellStyle プロパティを設定します。 次のコード例では、DataGridView.DefaultCellStyle プロパティを使用して、DBNull.Valueと等しい値を含むすべてのセルに "エントリなし" を表示します。

    this.dataGridView1.DefaultCellStyle.NullValue = "no entry";
    
    Me.dataGridView1.DefaultCellStyle.NullValue = "no entry"
    

テキストベースのセルでワードラップを有効にするには

  • WrapModeDataGridViewCellStyle プロパティを、DataGridViewTriState 列挙値のいずれかに設定します。 次のコード例では、DataGridView.DefaultCellStyle プロパティを使用して、コントロール全体のラップ モードを設定します。

    this.dataGridView1.DefaultCellStyle.WrapMode =
        DataGridViewTriState.True;
    
    Me.dataGridView1.DefaultCellStyle.WrapMode = DataGridViewTriState.True
    

DataGridView セルのテキストの配置を指定するには

  • AlignmentDataGridViewCellStyle プロパティを、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

コードのコンパイル

これらの例では、次のものが必要です。

  • DataGridViewという名前の列、dataGridView1という名前の列、および UnitPriceという名前の列を含む、ShipDate という名前の CustomerName コントロール。

  • SystemSystem.Drawing、および System.Windows.Forms アセンブリへの参照。

堅牢なプログラミング

スケーラビリティを最大限に高めるには、各要素のスタイル プロパティを個別に設定するのではなく、同じスタイルを使用する複数の行、列、セル間で DataGridViewCellStyle オブジェクトを共有する必要があります。 詳細については、「Windows フォーム DataGridView コントロールのスケーリングのベスト プラクティス」を参照してください。

こちらも参照ください