Home > other >  Show empty textbox to accept values in windows application
Show empty textbox to accept values in windows application

Time:01-18

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.

  •  Tags:  
  • Related