DataGridViewCellStyle Třída
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Představuje formátování a informace o stylu použité u jednotlivých buněk v ovládacím DataGridView prvku.
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
- Dědičnost
-
DataGridViewCellStyle
- Atributy
- Implementuje
Příklady
Následující příklad kódu ukazuje účinek nastavení vlastností na více DataGridViewCellStyle objektů. Tento příklad nastaví barvu pozadí buněk v objektu DataGridView nastavením BackColor vlastnosti DefaultCellStyle . Barva pozadí se přepíše na střídavých řádcích, protože BackColor vlastnost je nastavena na AlternatingRowsDefaultCellStyle vlastnost. Příklad také určuje formát kalendářních dat ve sloupci pojmenovaném Last Prepared nastavením Format vlastnosti u vlastnosti sloupce 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
Poznámky
Třída DataGridViewCellStyle umožňuje sdílet informace o stylu napříč více DataGridView buňkami, řádky, sloupci a záhlavími řádků nebo sloupců, a vyhnout se požadavkům na paměť nastavení vlastností stylu u jednotlivých buněk. Další informace o třídách, které mají vlastnost typu DataGridViewCellStyle a jejich vzájemné vztahy, naleznete v části Styly buněk v ovládacím prvku Windows Forms DataGridView.
Konstruktory
| Name | Description |
|---|---|
| DataGridViewCellStyle() |
Inicializuje novou instanci DataGridViewCellStyle třídy pomocí výchozích hodnot vlastností. |
| DataGridViewCellStyle(DataGridViewCellStyle) |
Inicializuje novou instanci DataGridViewCellStyle třídy pomocí hodnot vlastností zadaného DataGridViewCellStyle. |
Vlastnosti
| Name | Description |
|---|---|
| Alignment |
Získá nebo nastaví hodnotu označující pozici obsahu buňky v DataGridView buňce. |
| BackColor |
Získá nebo nastaví barvu DataGridView pozadí buňky. |
| DataSourceNullValue |
Získá nebo nastaví hodnotu uloženou do zdroje dat, když uživatel zadá hodnotu null do buňky. |
| Font |
Získá nebo nastaví písmo použité na textový obsah DataGridView buňky. |
| ForeColor |
Získá nebo nastaví barvu DataGridView popředí buňky. |
| Format |
Získá nebo nastaví formátovací řetězec použitý na textový obsah DataGridView buňky. |
| FormatProvider |
Získá nebo nastaví objekt použitý k poskytnutí jazykové verze formátování DataGridView hodnot buněk. |
| IsDataSourceNullValueDefault |
Získá hodnotu určující, zda DataSourceNullValue byla vlastnost nastavena. |
| IsFormatProviderDefault |
Získá hodnotu, která určuje, zda FormatProvider byla vlastnost nastavena. |
| IsNullValueDefault |
Získá hodnotu určující, zda NullValue byla vlastnost nastavena. |
| NullValue |
Získá nebo nastaví DataGridView hodnotu zobrazení buňky odpovídající hodnotě Value buňky nebo |
| Padding |
Získá nebo nastaví prostor mezi okrajem DataGridViewCell a jeho obsahem. |
| SelectionBackColor |
Získá nebo nastaví barvu pozadí použitou buňkou DataGridView při výběru. |
| SelectionForeColor |
Získá nebo nastaví barvu popředí použitou buňkou DataGridView při výběru. |
| Tag |
Získá nebo nastaví objekt, který obsahuje další data související s .DataGridViewCellStyle |
| WrapMode |
Získá nebo nastaví hodnotu určující, zda textový obsah v DataGridView buňce je zabalen na následné řádky nebo zkrácen, pokud je příliš dlouhý na jeden řádek. |
Metody
| Name | Description |
|---|---|
| ApplyStyle(DataGridViewCellStyle) |
Použije zadanou pro DataGridViewCellStyle aktuální DataGridViewCellStyle. |
| Clone() |
Vytvoří přesnou kopii tohoto DataGridViewCellStylesouboru . |
| Equals(Object) |
Vrátí hodnotu určující, zda je tato instance ekvivalentní zadanému objektu. |
| GetHashCode() |
Slouží jako hashovací funkce pro určitý typ. |
| GetType() |
Získá Type aktuální instance. (Zděděno od Object) |
| MemberwiseClone() |
Vytvoří mělkou kopii aktuálního Object. (Zděděno od Object) |
| ToString() |
Vrátí řetězec označující aktuální nastavení vlastnosti objektu DataGridViewCellStyle. |
Explicitní implementace rozhraní
| Name | Description |
|---|---|
| ICloneable.Clone() |
Vytvoří přesnou kopii tohoto DataGridViewCellStylesouboru . |
Platí pro
Viz také
- DataGridView
- DefaultCellStyle
- RowsDefaultCellStyle
- AlternatingRowsDefaultCellStyle
- ColumnHeadersDefaultCellStyle
- RowHeadersDefaultCellStyle
- CellFormatting
- CellStyleContentChanged
- InheritedStyle
- DefaultCellStyle
- DefaultCellStyle
- DefaultCellStyle
- InheritedStyle
- Style
- DataGridViewCellFormattingEventArgs
- Styly buněk v ovládacím prvku Windows Forms DataGridView
- Přehled ovládacího prvku DataGridView (Windows Forms)