Практическое руководство. Добавление столбца, не связанного с данными, в связанный с данными элемент управления DataGridView в Windows Forms
Обновлен: Ноябрь 2007
Данные, отображаемые в элементе управления DataGridView обычно берутся из какого-либо источника данных, однако может потребоваться отобразить столбец, для заполнения которого не используется источник данных. Такой столбец называется несвязанным. Несвязанные столбцы могут иметь различные формы. Они часто используются для обеспечения доступа к подробным сведениям о строке данных.
В следующем примере кода демонстрируется создание несвязанного столбца кнопок Details, служащих для отображения дочерней таблицы, связанной с определенной строкой в родительской таблице, при реализации сценария "главный-подчиненный". Для обработки щелчков мыши необходимо реализовать обработчик событий DataGridView.CellClick, который будет выводить на экран форму, содержащую дочернюю таблицу.
Данная задача поддерживается в Visual Studio. Дополнительные сведения см. в разделах Практическое руководство. Добавление и удаление столбцов элемента управления DataGridView в формах Windows Forms с помощью конструктора и Практическое руководство. Добавление и удаление столбцов элемента управления DataGridView в формах Windows Forms с помощью конструктора.
Пример
Private Sub CreateUnboundButtonColumn()
' Initialize the button column.
Dim buttonColumn As New DataGridViewButtonColumn
With buttonColumn
.HeaderText = "Details"
.Name = "Details"
.Text = "View Details"
' Use the Text property for the button text for all cells rather
' than using each cell's value as the text for its own button.
.UseColumnTextForButtonValue = True
End With
' Add the button column to the control.
dataGridView1.Columns.Insert(1, buttonColumn)
End Sub
private void CreateUnboundButtonColumn()
{
// Initialize the button column.
DataGridViewButtonColumn buttonColumn =
new DataGridViewButtonColumn();
buttonColumn.Name = "Details";
buttonColumn.HeaderText = "Details";
buttonColumn.Text = "View Details";
// Use the Text property for the button text for all cells rather
// than using each cell's value as the text for its own button.
buttonColumn.UseColumnTextForButtonValue = true;
// Add the button column to the control.
dataGridView1.Columns.Insert(1, buttonColumn);
}
Компиляция кода
Для этого примера требуются следующие компоненты.
Элемент управления DataGridView с именем dataGridView1.
Ссылки на сборки System и System.Windows.Forms.
См. также
Основные понятия
Режимы отображения данных в элементе управления DataGridView в Windows Forms
Ссылки
Другие ресурсы
Отображение данных с помощью элемента управления DataGridView в Windows Forms