Want to add empty textbox in every row of DataGridView in windows application in VB to accept input value along with data binding using collection.
Private Sub CreateTableStyle()
With grdViewer
Dim colDesc As New DataGridViewTextBoxColumn
With colDesc
.DataPropertyName = "Description"
.HeaderText = "Description"
'.Width = 350
.ReadOnly = True
.HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
.DefaultCellStyle.Alignment = DataGridViewContentAlignment.TopLeft
.DefaultCellStyle.WrapMode = DataGridViewTriState.True
.Name = "colDescription"
.Resizable = DataGridViewTriState.True
.AutoSizeMode = DataGridViewAutoSizeColumnMode.None
End With
.Columns.Add(colDesc)
Dim colAssigned As New DataGridViewCheckBoxColumn
With colAssigned
.DataPropertyName = "Assigned"
.HeaderText = "Assigned"
.HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
'.Width = 5
.ReadOnly = True
.DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
.Name = "colAssigned"
.Resizable = DataGridViewTriState.True
.AutoSizeMode = DataGridViewAutoSizeColumnMode.None
End With
.Columns.Add(colAssigned)
Dim emptyTextColumn As New DataGridViewCheckBoxColumn
With emptyTextColumn
.HeaderText = "Enter Description"
.HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
'.Width = 5
.ReadOnly = False
.DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
.Name = "emptyTextColumn"
.Resizable = DataGridViewTriState.True
.AutoSizeMode = DataGridViewAutoSizeColumnMode.None
End With
.Columns.Add(emptyTextColumn)
.DataSource = collectionPM
End With
End Sub
Binding the data to this DataGridView from database and also want to add textbox in every row of DataGridView as separate column to accept user input for every row.
CodePudding user response:
You can simply add another column to your code and not set its DataPropertyName
property. It doesn't matter whether you do it before or after setting the DataSource
. Personally, I would suggest that you get rid of that code and create the columns in the designer, unless there's a specific reason that you can't.