Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
DataGridView С помощью элемента управления можно указать стили ячеек по умолчанию для всего элемента управления и для определенных столбцов и строк. Эти значения по умолчанию передаются от уровня элемента управления к уровню столбца, затем к уровню строки и далее к уровню ячейки. Если определенное DataGridViewCellStyle свойство не задано на уровне ячейки, используется параметр свойства по умолчанию на уровне строки. Если свойство также не задано на уровне строки, используется параметр столбца по умолчанию. Наконец, если свойство также не задано на уровне столбца, используется параметр по умолчанию DataGridView . С помощью этого параметра можно избежать дублирования параметров свойств на нескольких уровнях. На каждом уровне просто укажите стили, которые отличаются от уровней над ним. Для получения дополнительной информации см. раздел Стили ячеек в контроле DataGridView Windows Forms.
В Visual Studio существует обширная поддержка этой задачи. См. также , как установить стили ячеек и форматы данных по умолчанию для элемента управления DataGridView Windows Forms с помощью конструктора.
Установка стилей ячеек по умолчанию программным способом
Задайте свойства DataGridViewCellStyle, полученного через свойство DataGridView.DefaultCellStyle.
this.dataGridView1.DefaultCellStyle.BackColor = Color.Beige; this.dataGridView1.DefaultCellStyle.Font = new Font("Tahoma", 12);Me.dataGridView1.DefaultCellStyle.BackColor = Color.Beige Me.dataGridView1.DefaultCellStyle.Font = New Font("Tahoma", 12)Создайте и инициализируйте новые объекты DataGridViewCellStyle для использования несколькими строками и столбцами.
DataGridViewCellStyle highlightCellStyle = new DataGridViewCellStyle(); highlightCellStyle.BackColor = Color.Red; DataGridViewCellStyle currencyCellStyle = new DataGridViewCellStyle(); currencyCellStyle.Format = "C"; currencyCellStyle.ForeColor = Color.Green;Dim highlightCellStyle As New DataGridViewCellStyle highlightCellStyle.BackColor = Color.Red Dim currencyCellStyle As New DataGridViewCellStyle currencyCellStyle.Format = "C" currencyCellStyle.ForeColor = Color.GreenDefaultCellStyleЗадайте свойство определенных строк и столбцов.this.dataGridView1.Rows[3].DefaultCellStyle = highlightCellStyle; this.dataGridView1.Rows[8].DefaultCellStyle = highlightCellStyle; this.dataGridView1.Columns["UnitPrice"].DefaultCellStyle = currencyCellStyle; this.dataGridView1.Columns["TotalPrice"].DefaultCellStyle = currencyCellStyle;With Me.dataGridView1 .Rows(3).DefaultCellStyle = highlightCellStyle .Rows(8).DefaultCellStyle = highlightCellStyle .Columns("UnitPrice").DefaultCellStyle = currencyCellStyle .Columns("TotalPrice").DefaultCellStyle = currencyCellStyle End With
Пример
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;
}
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
Компиляция кода
Для этого примера требуется:
Элемент управления DataGridView с именем
dataGridView1.Ссылки на сборки System, System.Drawingи System.Windows.Forms.
Надежное программирование
Чтобы обеспечить максимальную масштабируемость при работе с очень большими наборами данных, следует совместно DataGridViewCellStyle использовать объекты между несколькими строками, столбцами или ячейками, которые используют одни и те же стили, а не задавать свойства стиля для отдельных элементов отдельно. Кроме того, необходимо создать общие строки и получить к ним доступ с помощью DataGridViewRowCollection.SharedRow свойства. Дополнительные сведения см. в рекомендации по масштабированиюэлемента управления DataGridView в Windows Forms.
См. также
- DataGridView
- DataGridViewCellStyle
- DataGridView.DefaultCellStyle
- DataGridViewBand.DefaultCellStyle
- Базовое форматирование и стилизация в элементе управления Windows Forms DataGridView
- Стили ячеек в элементе управления DataGridView в Windows Forms
- Лучшие практики по масштабированию элемента управления DataGridView в Windows Forms
- Как настроить чередующиеся стили строк для элемента управления DataGridView в Windows Forms
.NET Desktop feedback