vb.net - winforms - datagridview - nueva fila con datos llenos en algunas celdas - desaparece

Cuando agrego una nueva fila a una vista de cuadrícula de datos, puedo agregar datos a una celda, pero cuando voy a la fila con el mouse, los datos desaparecen de la celda. ¿Qué código se necesita para que los datos permanezcan?

Private Sub BindingNavigatorAddNewItem_Click(sender As System.Object, e As System.EventArgs) Handles BindingNavigatorAddNewItem.Click

    ' When a new row is entered add Site id.
    Dim rRow As Integer = 0
    rRow = dgvEstimator2.NewRowIndex

    '' Set Job Site ID
    If IsDBNull(Me.dgvEstimator2(1, rRow).Value) Or IsNothing(Me.dgvEstimator2(1,       rRow).Value) Then
        Me.dgvEstimator2(1, rRow).Value = rJobsiteID
        ' .Rows(DGVRow).Cells(1).Value = objSheet.Cells(excelRow, 1).value  
        Me.dgvEstimator2.Rows(rRow).Cells(1).Value = rJobsiteID
        ' Me.dgvEstimator2.Rows(rRow).Cells(1).Selected = True
        'dataGridView1.Rows[Rowindex].Selected = true
        Me.dgvEstimator2.Rows(rRow).Selected = True
        ' dgvEstimator2.Rows(rRow).SetValues()
        dgvEstimator2.CommitEdit(DataGridViewDataErrorContexts.Commit)

    End If

end sub

Gracias de antemano!

preguntado el 10 de marzo de 12 a las 14:03

1 Respuestas

No está del todo claro lo que está tratando de lograr, pero parece que desea establecer algunos valores predeterminados para la nueva fila.

No debería necesitar usar un botón para hacer esto: la nueva fila debería mostrarse en la parte inferior de su cuadrícula cuando tenga AllowUsersToAddRows establecer verdadero Se genera un evento cuando una nueva fila necesita valores predeterminados y allí puede completar las celdas como desee.

Private Sub dataGridView1_DefaultValuesNeeded(ByVal sender As Object, _
ByVal e As System.Windows.Forms.DataGridViewRowEventArgs) _
Handles DataGridView1.DefaultValuesNeeded

    Dim index As Integer
    index = DataGridView1.NewRowIndex + 1

    e.Row.Cells("Column1").Value = index.ToString()

End Sub

Las celdas seguirán siendo editables; puede cambiarlas para que sean de solo lectura si lo desea, lo que podría ser una buena idea para las columnas de identificación.

respondido 10 mar '12, 22:03

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.