Condividi tramite


Procedura: impostare stili di cella predefiniti per il controllo DataGridView di Windows Form

Il controllo DataGridView consente di specificare gli stili di cella predefiniti per tutto il controllo e per colonne e righe specifiche. L'applicazione delle impostazioni predefinite inizia a livello di controllo, scende a livello di colonna, quindi a livello di riga e infine a quello di cella. Se una particolare proprietà DataGridViewCellStyle non viene impostata a livello di cella, verrà utilizzata l'impostazione predefinita a livello di riga. Se la proprietà non è impostata nemmeno a livello di riga, verrà utilizzata l'impostazione predefinita per la colonna. Infine, se la proprietà non è impostata nemmeno a livello di colonna, verrà utilizzata l'impostazione predefinita del controllo DataGridView. In questo modo è possibile evitare di duplicare le impostazioni della proprietà a più livelli, in quanto a ciascun livello è sufficiente specificare gli stili che differiscono dai livelli soprastanti. Per ulteriori informazioni, vedere Stili della cella nel controllo DataGridView Windows Form.

È disponibile un supporto completo per questa attività in Visual Studio. Per ulteriori informazioni, vedere Procedura: impostare formati di dati e stili di cella predefiniti per il controllo DataGridView di Windows Form utilizzando la finestra di progettazione e Procedura: impostare formati di dati e stili di cella predefiniti per il controllo DataGridView di Windows Form utilizzando la finestra di progettazione e Procedura: impostare formati di dati e stili di cella predefiniti per il controllo DataGridView di Windows Form utilizzando la finestra di progettazione e Procedura: impostare formati di dati e stili di cella predefiniti per il controllo DataGridView di Windows Form utilizzando la finestra di progettazione.

Per impostare gli stili di cella predefiniti a livello di codice

  1. Impostare le proprietà di DataGridViewCellStyle recuperate mediante la proprietà DataGridView.DefaultCellStyle.

    Me.dataGridView1.DefaultCellStyle.BackColor = Color.Beige
    Me.dataGridView1.DefaultCellStyle.Font = New Font("Tahoma", 12)
    
    this.dataGridView1.DefaultCellStyle.BackColor = Color.Beige;
    this.dataGridView1.DefaultCellStyle.Font = new Font("Tahoma", 12);
    
  2. Creare e inizializzare nuovi oggetti DataGridViewCellStyle da utilizzare per più righe e colonne.

    Dim highlightCellStyle As New DataGridViewCellStyle
    highlightCellStyle.BackColor = Color.Red
    
    Dim currencyCellStyle As New DataGridViewCellStyle
    currencyCellStyle.Format = "C"
    currencyCellStyle.ForeColor = Color.Green
    
    DataGridViewCellStyle highlightCellStyle = new DataGridViewCellStyle();
    highlightCellStyle.BackColor = Color.Red;
    
    DataGridViewCellStyle currencyCellStyle = new DataGridViewCellStyle();
    currencyCellStyle.Format = "C";
    currencyCellStyle.ForeColor = Color.Green;
    
  3. Impostare la proprietà DefaultCellStyle di righe e colonne specifiche.

    With Me.dataGridView1
        .Rows(3).DefaultCellStyle = highlightCellStyle
        .Rows(8).DefaultCellStyle = highlightCellStyle
        .Columns("UnitPrice").DefaultCellStyle = currencyCellStyle
        .Columns("TotalPrice").DefaultCellStyle = currencyCellStyle
    End With
    
    this.dataGridView1.Rows[3].DefaultCellStyle = highlightCellStyle;
    this.dataGridView1.Rows[8].DefaultCellStyle = highlightCellStyle;
    this.dataGridView1.Columns["UnitPrice"].DefaultCellStyle =
        currencyCellStyle;
    this.dataGridView1.Columns["TotalPrice"].DefaultCellStyle =
        currencyCellStyle;
    

Esempio

Private Sub SetDefaultCellStyles()

    Dim highlightCellStyle As New DataGridViewCellStyle
    highlightCellStyle.BackColor = Color.Red

    Dim currencyCellStyle As New DataGridViewCellStyle
    currencyCellStyle.Format = "C"
    currencyCellStyle.ForeColor = Color.Green

    With Me.dataGridView1
        .DefaultCellStyle.BackColor = Color.Beige
        .DefaultCellStyle.Font = New Font("Tahoma", 12)
        .Rows(3).DefaultCellStyle = highlightCellStyle
        .Rows(8).DefaultCellStyle = highlightCellStyle
        .Columns("UnitPrice").DefaultCellStyle = currencyCellStyle
        .Columns("TotalPrice").DefaultCellStyle = currencyCellStyle
    End With

End Sub
private void SetDefaultCellStyles()
{
    this.dataGridView1.DefaultCellStyle.BackColor = Color.Beige;
    this.dataGridView1.DefaultCellStyle.Font = new Font("Tahoma", 12);

    DataGridViewCellStyle highlightCellStyle = new DataGridViewCellStyle();
    highlightCellStyle.BackColor = Color.Red;

    DataGridViewCellStyle currencyCellStyle = new DataGridViewCellStyle();
    currencyCellStyle.Format = "C";
    currencyCellStyle.ForeColor = Color.Green;

    this.dataGridView1.Rows[3].DefaultCellStyle = highlightCellStyle;
    this.dataGridView1.Rows[8].DefaultCellStyle = highlightCellStyle;
    this.dataGridView1.Columns["UnitPrice"].DefaultCellStyle =
        currencyCellStyle;
    this.dataGridView1.Columns["TotalPrice"].DefaultCellStyle =
        currencyCellStyle;
}

Compilazione del codice

L'esempio presenta i seguenti requisiti:

Programmazione efficiente

A fini di scalabilità quando si utilizzano DataSet di grandi dimensioni, è consigliabile che gli oggetti DataGridViewCellStyle vengano condivisi da più righe, colonne o celle che utilizzano lo stesso stile anziché impostare le proprietà di stile separatamente per i singoli elementi. È inoltre opportuno creare righe condivise e accedervi mediante la proprietà DataGridViewRowCollection.SharedRow. Per ulteriori informazioni, vedere Procedure consigliate per ridimensionare il controllo DataGridView Windows Form.

Vedere anche

Attività

Procedura: impostare stili di righe alterne per il controllo DataGridView di Windows Form

Riferimenti

DataGridView

DataGridViewCellStyle

DataGridView.DefaultCellStyle

DataGridViewBand.DefaultCellStyle

Concetti

Stili della cella nel controllo DataGridView Windows Form

Procedure consigliate per ridimensionare il controllo DataGridView Windows Form

Altre risorse

Formattazione e stile di base nel controllo DataGridView Windows Form