0
몇 달 전에이 코드가 웹에서 발견되었습니다. DataGridview 열을 만드는 데 좋습니다. 나는 comboboxcolumn을 생성하는 데 사용한 적이 없다. 이제 그 작업을 수행해야하며 값을 열에 할당하는 방법을 알 수 없습니다. 그리고이 코드를 처음 발견 한 곳을 찾을 수 없습니다. 나는 지금 그것의 발췌 문장을 찾을 수 있지만 완전한 것은 아무것도 아니다.이 코드를 사용하여 DataGridView 열을 만드는 방법
textboxcolumn을 만들고 값이있는 dgv 행을 만드는 것은 쉽습니다. 그러나, 나는 comboboxcolumn를 만드는 방법을 모른다. 그런데이 경우 열은 각 행에 대해 동일한 콤보 상자 값을 사용할 수 있습니다. 내가 데이터를 보유하는 데이터 테이블을 만들
DGV에 바인딩 할 : 다음 데이터 테이블에
Dim dt As New DataTable("Grid")
Dim dr As DataRow
dtSetupColumns(dt)
Public Sub dtSetupColumns(ByRef dt As DataTable)
dt.Columns.Add("name_l", GetType(String))
dt.Columns.Add("name_f", GetType(String))
dt.Columns.Add("state", GetType(String))
End Sub
지정 값을 : 여기
내가 가진 코드의dr = dt.NewRow()
dr("name_l") = ' from query table
dt.Rows.Add(dr)
만들기 DataGridView 열 :
dgvCreateColumns(dgv)
Public Sub dgvCreateColumns(ByRef inDataGridView As DataGridView)
With inDataGridView.Columns
.Add(dgvCreateColumn(ColumnStyle.TextBoxColumn, String.Empty, "Last Name", "name_l", 80, DataGridViewContentAlignment.MiddleLeft))
.Add(dgvCreateColumn(ColumnStyle.TextBoxColumn, String.Empty, "First Name", "name_f", 80, DataGridViewContentAlignment.MiddleLeft))
.Add(dgvCreateColumn(ColumnStyle.ComboBoxColumn, String.Empty, "State", "state", 80, DataGridViewContentAlignment.MiddleLeft))
End With
End Sub
Public Shared Function dgvCreateColumn(ByVal ColumnType As ColumnStyle, ByVal format As String, ByVal headerText As String, ByVal dataPropertyName As String, ByVal width As Integer, ByVal alignment As DataGridViewContentAlignment, Optional ByVal bMakeVisible As Boolean = True, Optional ByVal inReadOnly As Boolean = False) As DataGridViewColumn
Dim dgvC As DataGridViewColumn = Nothing
Select Case ColumnType
Case ColumnStyle.ButtonColumn
dgvC = New DataGridViewButtonColumn
Case ColumnStyle.CheckBoxColumn
dgvC = New DataGridViewCheckBoxColumn
Case ColumnStyle.ComboBoxColumn
dgvC = New DataGridViewComboBoxColumn
Case ColumnStyle.ImageColumn
dgvC = New DataGridViewImageColumn
Case ColumnStyle.LinkColumn
dgvC = New DataGridViewLinkColumn
Case ColumnStyle.TextBoxColumn
dgvC = New DataGridViewTextBoxColumn
End Select
With dgvC
.DataPropertyName = dataPropertyName
.DefaultCellStyle.Alignment = alignment
.DefaultCellStyle.Format = format
If ColumnType = ColumnStyle.ButtonColumn Then
'.colum()
End If
.HeaderText = headerText
.Name = headerText
.ReadOnly = inReadOnly
If width = 0 Then
.Visible = False
Else
.Width = width
If bMakeVisible = False Then
.Visible = False
Else
.Visible = True
End If
End If
End With
Return dgvC
End Function