DataGridViewCellStyle Klasa
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Reprezentuje informacje o formatowaniu i stylu stosowane do poszczególnych komórek w kontrolce DataGridView .
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
- Dziedziczenie
-
DataGridViewCellStyle
- Atrybuty
- Implementuje
Przykłady
Poniższy przykład kodu pokazuje wpływ ustawiania właściwości na wielu DataGridViewCellStyle obiektach. W tym przykładzie ustawia kolor tła komórek w obiekcie DataGridView , ustawiając BackColor właściwość we DefaultCellStyle właściwości. Kolor tła jest zastępowany na przemiennych wierszach, ponieważ BackColor właściwość jest ustawiona AlternatingRowsDefaultCellStyle na właściwości . Przykład określa również format dat w kolumnie o nazwie Last Prepared
, ustawiając Format właściwość we właściwości kolumny DefaultCellStyle .
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
Uwagi
Klasa DataGridViewCellStyle umożliwia udostępnianie informacji o stylu w wielu DataGridView komórkach, wierszach, kolumnach i nagłówkach wierszy lub kolumn, unikając wymagań pamięci dotyczących ustawiania właściwości stylu dla poszczególnych komórek. Aby uzyskać więcej informacji na temat klas, które mają właściwość typu DataGridViewCellStyle i sposobu ich powiązania ze sobą, zobacz Style komórek w kontrolce DataGridView Windows Forms.
Konstruktory
DataGridViewCellStyle() |
Inicjuje nowe wystąpienie klasy przy użyciu domyślnych DataGridViewCellStyle wartości właściwości. |
DataGridViewCellStyle(DataGridViewCellStyle) |
Inicjuje DataGridViewCellStyle nowe wystąpienie klasy przy użyciu wartości właściwości określonej DataGridViewCellStyleklasy . |
Właściwości
Alignment |
Pobiera lub ustawia wartość wskazującą położenie zawartości komórki w DataGridView komórce. |
BackColor |
Pobiera lub ustawia kolor DataGridView tła komórki. |
DataSourceNullValue |
Pobiera lub ustawia wartość zapisaną w źródle danych, gdy użytkownik wprowadza wartość null do komórki. |
Font |
Pobiera lub ustawia czcionkę zastosowaną do tekstowej DataGridView zawartości komórki. |
ForeColor |
Pobiera lub ustawia kolor DataGridView pierwszego planu komórki. |
Format |
Pobiera lub ustawia ciąg formatu zastosowany do tekstowej DataGridView zawartości komórki. |
FormatProvider |
Pobiera lub ustawia obiekt używany do zapewnienia formatowania specyficznego DataGridView dla kultury wartości komórek. |
IsDataSourceNullValueDefault |
Pobiera wartość wskazującą DataSourceNullValue , czy właściwość została ustawiona. |
IsFormatProviderDefault |
Pobiera wartość wskazującą, czy FormatProvider właściwość została ustawiona. |
IsNullValueDefault |
Pobiera wartość wskazującą NullValue , czy właściwość została ustawiona. |
NullValue |
Pobiera lub ustawia wartość wyświetlaną DataGridView komórki odpowiadającą wartości komórki lub Value |
Padding |
Pobiera lub ustawia odstęp między krawędzią elementu DataGridViewCell a jego zawartością. |
SelectionBackColor |
Pobiera lub ustawia kolor tła używany przez komórkę po jej wybraniu DataGridView . |
SelectionForeColor |
Pobiera lub ustawia kolor pierwszego planu używany przez komórkę po jej wybraniu DataGridView . |
Tag |
Pobiera lub ustawia obiekt zawierający dodatkowe dane powiązane z obiektem DataGridViewCellStyle. |
WrapMode |
Pobiera lub ustawia wartość wskazującą, czy zawartość tekstowa w DataGridView komórce jest opakowana do kolejnych wierszy lub obcięta, gdy jest zbyt długa, aby zmieścić się w jednym wierszu. |
Metody
ApplyStyle(DataGridViewCellStyle) |
Stosuje określony DataGridViewCellStyle element do bieżącego DataGridViewCellStyleelementu . |
Clone() |
Tworzy dokładną kopię tego elementu DataGridViewCellStyle. |
Equals(Object) |
Zwraca wartość wskazującą, czy to wystąpienie jest równoważne określonemu obiektowi. |
GetHashCode() |
Pełni rolę funkcji skrótu dla określonego typu. |
GetType() |
Type Pobiera bieżące wystąpienie. (Odziedziczone po Object) |
MemberwiseClone() |
Tworzy płytkią kopię bieżącego Objectelementu . (Odziedziczone po Object) |
ToString() |
Zwraca ciąg wskazujący bieżące ustawienia właściwości elementu DataGridViewCellStyle. |
Jawne implementacje interfejsu
ICloneable.Clone() |
Tworzy dokładną kopię tego elementu DataGridViewCellStyle. |
Dotyczy
Zobacz też
- DataGridView
- DefaultCellStyle
- RowsDefaultCellStyle
- AlternatingRowsDefaultCellStyle
- ColumnHeadersDefaultCellStyle
- RowHeadersDefaultCellStyle
- CellFormatting
- CellStyleContentChanged
- InheritedStyle
- DefaultCellStyle
- DefaultCellStyle
- DefaultCellStyle
- InheritedStyle
- Style
- DataGridViewCellFormattingEventArgs
- Style komórki w formancie DataGridView formularzy systemu Windows
- DataGridView — Informacje o formancie [Formularze systemu Windows]