DataGridViewCellStyle Classe
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Rappresenta le informazioni di formattazione e stile applicate alle singole celle all'interno di un DataGridView controllo .
public ref class DataGridViewCellStyle : ICloneable
[System.ComponentModel.TypeConverter(typeof(System.Windows.Forms.DataGridViewCellStyleConverter))]
public class DataGridViewCellStyle : ICloneable
[<System.ComponentModel.TypeConverter(typeof(System.Windows.Forms.DataGridViewCellStyleConverter))>]
type DataGridViewCellStyle = class
interface ICloneable
Public Class DataGridViewCellStyle
Implements ICloneable
- Ereditarietà
-
DataGridViewCellStyle
- Attributi
- Implementazioni
Esempio
Nell'esempio di codice seguente viene illustrato l'effetto dell'impostazione delle proprietà su più DataGridViewCellStyle oggetti. In questo esempio viene impostato il colore di sfondo delle celle nell'oggetto DataGridView impostando la BackColor proprietà sulla DefaultCellStyle proprietà . Il colore di sfondo viene sottoposto a override sulle righe alternate perché la BackColor proprietà è impostata sulla AlternatingRowsDefaultCellStyle proprietà . L'esempio determina anche il formato delle date nella colonna denominata Last Prepared impostando la Format proprietà sulla proprietà della DefaultCellStyle colonna.
using System;
using System.Drawing;
using System.Collections;
using System.ComponentModel;
using System.Windows.Forms;
public class Form1 : System.Windows.Forms.Form
{
[STAThreadAttribute()]
public static void Main()
{
Application.Run(new Form1());
}
private DataGridView dataGridView1 = new DataGridView();
protected override void OnLoad(EventArgs e)
{
// Create the columns and load the data.
PopulateDataGridView();
// Configure the appearance and behavior of the DataGridView.
InitializeDataGridView();
// Initialize the form.
this.Text = "DataGridView style demo";
this.Size = new Size(600, 250);
this.Controls.Add(dataGridView1);
base.OnLoad(e);
}
// Configures the appearance and behavior of a DataGridView control.
private void InitializeDataGridView()
{
// Initialize basic DataGridView properties.
dataGridView1.Dock = DockStyle.Fill;
dataGridView1.BackgroundColor = Color.LightGray;
dataGridView1.BorderStyle = BorderStyle.Fixed3D;
// Set property values appropriate for read-only display and
// limited interactivity.
dataGridView1.AllowUserToAddRows = false;
dataGridView1.AllowUserToDeleteRows = false;
dataGridView1.AllowUserToOrderColumns = true;
dataGridView1.ReadOnly = true;
dataGridView1.SelectionMode = DataGridViewSelectionMode.FullRowSelect;
dataGridView1.MultiSelect = false;
dataGridView1.AutoSizeRowsMode = DataGridViewAutoSizeRowsMode.None;
dataGridView1.AllowUserToResizeColumns = false;
dataGridView1.ColumnHeadersHeightSizeMode =
DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
dataGridView1.AllowUserToResizeRows = false;
dataGridView1.RowHeadersWidthSizeMode =
DataGridViewRowHeadersWidthSizeMode.DisableResizing;
// Set the selection background color for all the cells.
dataGridView1.DefaultCellStyle.SelectionBackColor = Color.White;
dataGridView1.DefaultCellStyle.SelectionForeColor = Color.Black;
// Set RowHeadersDefaultCellStyle.SelectionBackColor so that its default
// value won't override DataGridView.DefaultCellStyle.SelectionBackColor.
dataGridView1.RowHeadersDefaultCellStyle.SelectionBackColor = Color.Empty;
// Set the background color for all rows and for alternating rows.
// The value for alternating rows overrides the value for all rows.
dataGridView1.RowsDefaultCellStyle.BackColor = Color.LightGray;
dataGridView1.AlternatingRowsDefaultCellStyle.BackColor = Color.DarkGray;
// Set the row and column header styles.
dataGridView1.ColumnHeadersDefaultCellStyle.ForeColor = Color.White;
dataGridView1.ColumnHeadersDefaultCellStyle.BackColor = Color.Black;
dataGridView1.RowHeadersDefaultCellStyle.BackColor = Color.Black;
// Set the Format property on the "Last Prepared" column to cause
// the DateTime to be formatted as "Month, Year".
dataGridView1.Columns["Last Prepared"].DefaultCellStyle.Format = "y";
// Specify a larger font for the "Ratings" column.
using (Font font = new Font(
dataGridView1.DefaultCellStyle.Font.FontFamily, 25, FontStyle.Bold))
{
dataGridView1.Columns["Rating"].DefaultCellStyle.Font = font;
}
// Attach a handler to the CellFormatting event.
dataGridView1.CellFormatting += new
DataGridViewCellFormattingEventHandler(dataGridView1_CellFormatting);
}
// Changes the foreground color of cells in the "Ratings" column
// depending on the number of stars.
private void dataGridView1_CellFormatting(object sender,
DataGridViewCellFormattingEventArgs e)
{
if (e.ColumnIndex == dataGridView1.Columns["Rating"].Index
&& e.Value != null)
{
switch (e.Value.ToString().Length)
{
case 1:
e.CellStyle.SelectionForeColor = Color.Red;
e.CellStyle.ForeColor = Color.Red;
break;
case 2:
e.CellStyle.SelectionForeColor = Color.Yellow;
e.CellStyle.ForeColor = Color.Yellow;
break;
case 3:
e.CellStyle.SelectionForeColor = Color.Green;
e.CellStyle.ForeColor = Color.Green;
break;
case 4:
e.CellStyle.SelectionForeColor = Color.Blue;
e.CellStyle.ForeColor = Color.Blue;
break;
}
}
}
// Creates the columns and loads the data.
private void PopulateDataGridView()
{
// Set the column header names.
dataGridView1.ColumnCount = 5;
dataGridView1.Columns[0].Name = "Recipe";
dataGridView1.Columns[1].Name = "Category";
dataGridView1.Columns[2].Name = "Main Ingredients";
dataGridView1.Columns[3].Name = "Last Prepared";
dataGridView1.Columns[4].Name = "Rating";
// Populate the rows.
object[] row1 = new object[]{"Meatloaf", "Main Dish",
"ground beef", new DateTime(2000, 3, 23), "*"};
object[] row2 = new object[]{"Key Lime Pie", "Dessert",
"lime juice, evaporated milk", new DateTime(2002, 4, 12), "****"};
object[] row3 = new object[]{"Orange-Salsa Pork Chops", "Main Dish",
"pork chops, salsa, orange juice", new DateTime(2000, 8, 9), "****"};
object[] row4 = new object[]{"Black Bean and Rice Salad", "Salad",
"black beans, brown rice", new DateTime(1999, 5, 7), "****"};
object[] row5 = new object[]{"Chocolate Cheesecake", "Dessert",
"cream cheese", new DateTime(2003, 3, 12), "***"};
object[] row6 = new object[]{"Black Bean Dip", "Appetizer",
"black beans, sour cream", new DateTime(2003, 12, 23), "***"};
// Add the rows to the DataGridView.
object[] rows = new object[] { row1, row2, row3, row4, row5, row6 };
foreach (object[] rowArray in rows)
{
dataGridView1.Rows.Add(rowArray);
}
// Adjust the row heights so that all content is visible.
dataGridView1.AutoResizeRows(
DataGridViewAutoSizeRowsMode.AllCellsExceptHeaders);
}
}
Imports System.Drawing
Imports System.Collections
Imports System.ComponentModel
Imports System.Windows.Forms
Public Class Form1
Inherits System.Windows.Forms.Form
<STAThreadAttribute()> _
Public Shared Sub Main()
Application.Run(New Form1())
End Sub
Private WithEvents dataGridView1 As New DataGridView()
Protected Overrides Sub OnLoad(ByVal e As EventArgs)
' Create the columns and load the data.
PopulateDataGridView()
' Configure the appearance and behavior of the DataGridView.
InitializeDataGridView()
' Initialize the form.
Me.Text = "DataGridView style demo"
Me.Size = New Size(600, 250)
Me.Controls.Add(dataGridView1)
MyBase.OnLoad(e)
End Sub
' Configures the appearance and behavior of a DataGridView control.
Private Sub InitializeDataGridView()
' Initialize basic DataGridView properties.
dataGridView1.Dock = DockStyle.Fill
dataGridView1.BackgroundColor = Color.LightGray
dataGridView1.BorderStyle = BorderStyle.Fixed3D
' Set property values appropriate for read-only display and
' limited interactivity.
dataGridView1.AllowUserToAddRows = False
dataGridView1.AllowUserToDeleteRows = False
dataGridView1.AllowUserToOrderColumns = True
dataGridView1.ReadOnly = True
dataGridView1.SelectionMode = DataGridViewSelectionMode.FullRowSelect
dataGridView1.MultiSelect = False
dataGridView1.AutoSizeRowsMode = DataGridViewAutoSizeRowsMode.None
dataGridView1.AllowUserToResizeColumns = False
dataGridView1.ColumnHeadersHeightSizeMode = _
DataGridViewColumnHeadersHeightSizeMode.DisableResizing
dataGridView1.AllowUserToResizeRows = False
dataGridView1.RowHeadersWidthSizeMode = _
DataGridViewRowHeadersWidthSizeMode.DisableResizing
' Set the selection background color for all the cells.
dataGridView1.DefaultCellStyle.SelectionBackColor = Color.White
dataGridView1.DefaultCellStyle.SelectionForeColor = Color.Black
' Set RowHeadersDefaultCellStyle.SelectionBackColor so that its default
' value won't override DataGridView.DefaultCellStyle.SelectionBackColor.
dataGridView1.RowHeadersDefaultCellStyle.SelectionBackColor = Color.Empty
' Set the background color for all rows and for alternating rows.
' The value for alternating rows overrides the value for all rows.
dataGridView1.RowsDefaultCellStyle.BackColor = Color.LightGray
dataGridView1.AlternatingRowsDefaultCellStyle.BackColor = Color.DarkGray
' Set the row and column header styles.
dataGridView1.ColumnHeadersDefaultCellStyle.ForeColor = Color.White
dataGridView1.ColumnHeadersDefaultCellStyle.BackColor = Color.Black
dataGridView1.RowHeadersDefaultCellStyle.BackColor = Color.Black
' Set the Format property on the "Last Prepared" column to cause
' the DateTime to be formatted as "Month, Year".
dataGridView1.Columns("Last Prepared").DefaultCellStyle.Format = "y"
' Specify a larger font for the "Ratings" column.
Dim font As New Font( _
dataGridView1.DefaultCellStyle.Font.FontFamily, 25, FontStyle.Bold)
Try
dataGridView1.Columns("Rating").DefaultCellStyle.Font = font
Finally
font.Dispose()
End Try
End Sub
' Changes the foreground color of cells in the "Ratings" column
' depending on the number of stars.
Private Sub dataGridView1_CellFormatting(ByVal sender As Object, _
ByVal e As DataGridViewCellFormattingEventArgs) _
Handles dataGridView1.CellFormatting
If e.ColumnIndex = dataGridView1.Columns("Rating").Index _
AndAlso e.Value IsNot Nothing Then
Select Case e.Value.ToString().Length
Case 1
e.CellStyle.SelectionForeColor = Color.Red
e.CellStyle.ForeColor = Color.Red
Case 2
e.CellStyle.SelectionForeColor = Color.Yellow
e.CellStyle.ForeColor = Color.Yellow
Case 3
e.CellStyle.SelectionForeColor = Color.Green
e.CellStyle.ForeColor = Color.Green
Case 4
e.CellStyle.SelectionForeColor = Color.Blue
e.CellStyle.ForeColor = Color.Blue
End Select
End If
End Sub
' Creates the columns and loads the data.
Private Sub PopulateDataGridView()
' Set the column header names.
dataGridView1.ColumnCount = 5
dataGridView1.Columns(0).Name = "Recipe"
dataGridView1.Columns(1).Name = "Category"
dataGridView1.Columns(2).Name = "Main Ingredients"
dataGridView1.Columns(3).Name = "Last Prepared"
dataGridView1.Columns(4).Name = "Rating"
' Populate the rows.
Dim row1() As Object = {"Meatloaf", "Main Dish", _
"ground beef", New DateTime(2000, 3, 23), "*"}
Dim row2() As Object = {"Key Lime Pie", "Dessert", _
"lime juice, evaporated milk", New DateTime(2002, 4, 12), "****"}
Dim row3() As Object = {"Orange-Salsa Pork Chops", "Main Dish", _
"pork chops, salsa, orange juice", New DateTime(2000, 8, 9), "****"}
Dim row4() As Object = {"Black Bean and Rice Salad", "Salad", _
"black beans, brown rice", New DateTime(1999, 5, 7), "****"}
Dim row5() As Object = {"Chocolate Cheesecake", "Dessert", _
"cream cheese", New DateTime(2003, 3, 12), "***"}
Dim row6() As Object = {"Black Bean Dip", "Appetizer", _
"black beans, sour cream", New DateTime(2003, 12, 23), "***"}
' Add the rows to the DataGridView.
Dim rows() As Object = {row1, row2, row3, row4, row5, row6}
Dim rowArray As Object()
For Each rowArray In rows
dataGridView1.Rows.Add(rowArray)
Next rowArray
' Adjust the row heights so that all content is visible.
dataGridView1.AutoResizeRows( _
DataGridViewAutoSizeRowsMode.AllCellsExceptHeaders)
End Sub
End Class
Commenti
La DataGridViewCellStyle classe consente di condividere informazioni sullo stile tra più DataGridView celle, righe, colonne e intestazioni di riga o di colonna, evitando i requisiti di memoria di impostazione delle proprietà di stile su singole celle. Per altre informazioni sulle classi con una proprietà di tipo DataGridViewCellStyle e sulla relativa correlazione tra loro, vedere Stili di cella nel controllo DataGridView di Windows Forms.
Costruttori
| Nome | Descrizione |
|---|---|
| DataGridViewCellStyle() |
Inizializza una nuova istanza della DataGridViewCellStyle classe utilizzando i valori di proprietà predefiniti. |
| DataGridViewCellStyle(DataGridViewCellStyle) |
Inizializza una nuova istanza della DataGridViewCellStyle classe utilizzando i valori della proprietà dell'oggetto specificato DataGridViewCellStyle. |
Proprietà
| Nome | Descrizione |
|---|---|
| Alignment |
Ottiene o imposta un valore che indica la posizione del contenuto della cella all'interno di una DataGridView cella. |
| BackColor |
Ottiene o imposta il colore di sfondo di una DataGridView cella. |
| DataSourceNullValue |
Ottiene o imposta il valore salvato nell'origine dati quando l'utente immette un valore Null in una cella. |
| Font |
Ottiene o imposta il tipo di carattere applicato al contenuto testuale di una DataGridView cella. |
| ForeColor |
Ottiene o imposta il colore di primo piano di una DataGridView cella. |
| Format |
Ottiene o imposta la stringa di formato applicata al contenuto testuale di una DataGridView cella. |
| FormatProvider |
Ottiene o imposta l'oggetto utilizzato per fornire una formattazione specifica delle impostazioni cultura dei valori di DataGridView cella. |
| IsDataSourceNullValueDefault |
Ottiene un valore che indica se la DataSourceNullValue proprietà è stata impostata. |
| IsFormatProviderDefault |
Ottiene un valore che indica se la FormatProvider proprietà è stata impostata. |
| IsNullValueDefault |
Ottiene un valore che indica se la NullValue proprietà è stata impostata. |
| NullValue |
Ottiene o imposta il valore di visualizzazione della DataGridView cella corrispondente a un valore di cella pari Value a o |
| Padding |
Ottiene o imposta lo spazio tra il bordo di un DataGridViewCell oggetto e il relativo contenuto. |
| SelectionBackColor |
Ottiene o imposta il colore di sfondo utilizzato da una DataGridView cella quando è selezionata. |
| SelectionForeColor |
Ottiene o imposta il colore di primo piano utilizzato da una DataGridView cella quando viene selezionato. |
| Tag |
Ottiene o imposta un oggetto che contiene dati aggiuntivi correlati all'oggetto DataGridViewCellStyle. |
| WrapMode |
Ottiene o imposta un valore che indica se il contenuto testuale in una DataGridView cella viene racchiuso in righe successive o troncato quando è troppo lungo per adattarsi a una singola riga. |
Metodi
| Nome | Descrizione |
|---|---|
| ApplyStyle(DataGridViewCellStyle) |
Applica l'oggetto specificato DataGridViewCellStyle all'oggetto corrente DataGridViewCellStyle. |
| Clone() |
Crea una copia esatta di questo DataGridViewCellStyleoggetto . |
| Equals(Object) |
Restituisce un valore che indica se questa istanza è equivalente all'oggetto specificato. |
| GetHashCode() |
Funge da funzione hash per un particolare tipo. |
| GetType() |
Ottiene il Type dell'istanza corrente. (Ereditato da Object) |
| MemberwiseClone() |
Crea una copia superficiale del Objectcorrente. (Ereditato da Object) |
| ToString() |
Restituisce una stringa che indica le impostazioni della proprietà corrente dell'oggetto DataGridViewCellStyle. |
Implementazioni dell'interfaccia esplicita
| Nome | Descrizione |
|---|---|
| ICloneable.Clone() |
Crea una copia esatta di questo DataGridViewCellStyleoggetto . |
Si applica a
Vedi anche
- DataGridView
- DefaultCellStyle
- RowsDefaultCellStyle
- AlternatingRowsDefaultCellStyle
- ColumnHeadersDefaultCellStyle
- RowHeadersDefaultCellStyle
- CellFormatting
- CellStyleContentChanged
- InheritedStyle
- DefaultCellStyle
- DefaultCellStyle
- DefaultCellStyle
- InheritedStyle
- Style
- DataGridViewCellFormattingEventArgs
- Stili di cella nel controllo DataGridView di Windows Form
- Panoramica del controllo DataGridView (Windows Form)