Autor Tema: ayuda a PROGRAMAR BOTON DE ACTUALIZAR BD de datagridview en visual basic 2012  (Leído 10223 veces)

Lepizz

  • Sin experiencia
  • *
  • Mensajes: 40
    • Ver Perfil
Hola tengo un botón que actualiza bien con este código:

Código: [Seleccionar]
Me.Esc_SalarialTableAdapter.Fill(Me.Database1DataSet.Esc_Salarial)
pero ocupo que actualice y conserve la posición en la que me encuentro en el datagrid para que si hago cambios o cosas de ese tipo, cada vez que actualice no pierda la posición en que estoy y me envíe haastaaa el principio de la bd???

Creo que este código me sirve para eso( si conocen uno díganmelo por favor!(porque no estoy seguro)):
Código: [Seleccionar]
 
        If Me.BindingContext(Esc_SalarialBindingSource).Position = 0 Then
        End If

        Me.BindingContext(Esc_SalarialBindingSource).Position -= 1 And
        Me.BindingContext(Esc_SalarialBindingSource).Position = 1

        Esc_SalarialDataGridView.Text = Me.BindingContext(Esc_SalarialBindingSource).Position
    End Sub


Pero no sé cómo mezclarlos de forma que funcionen correctamente lo tengo asi:

Código: [Seleccionar]
    Private Sub Button5_Click(sender As Object, e As EventArgs) Handles Button5.Click
        '   EN LA LINEA SIGUIENTE ME DA ERROR
        If Button5_Click(AcceptButton) Then

            Me.Esc_SalarialTableAdapter.Fill(Me.Database1DataSet.Esc_Salarial)

            If Me.Esc_SalarialTableAdapter.Fill(Me.Database1DataSet.Esc_Salarial) Then
                Me.BindingContext(Esc_SalarialBindingSource).Position = 0
                Me.BindingContext(Esc_SalarialBindingSource).Position -= 1 And
                Me.BindingContext(Esc_SalarialBindingSource).Position = 1
                Esc_SalarialDataGridView.Text = Me.BindingContext(Esc_SalarialBindingSource).Position
            End If
        End If


    End Sub


Pero no me sirve la primer linea del IF, COMO LA HAGO DE FORMA QUE FUNCIONE ESE CÓDIGO o tal vez alguien me pueda dar UN CÓDIGO QUE FUNCIONE EN CASO QUE EL MIO NO SEA EL CORRECTO?

muchas gracias amigos Saludos!
« Última modificación: 26 de Julio 2015, 20:58 por Alex Rodríguez »

Mastermind

  • Experto
  • *****
  • Mensajes: 536
    • Ver Perfil
Pienso que lo puedes solucionar de esta manera: antes de hacer la actualización, guarda la posición (la celda en la que te encuentras, por ejemplo la celda 4,6)

Una vez termina la actualización usa CurrentCell indicando cuál es la celda que debe ser la celda actual:

Código: [Seleccionar]
Private Sub setCurrentCellButton_Click(ByVal sender As Object, _
    ByVal e As System.EventArgs) Handles setCurrentCellButton.Click

    ' Set the current cell to the cell in column 1, Row 0. 
    Me.dataGridView1.CurrentCell = Me.dataGridView1(4, 6)

End Sub

Saludos!!

Lepizz

  • Sin experiencia
  • *
  • Mensajes: 40
    • Ver Perfil
Creo que tienes razón, puede ser una buena idea : pero mi programa marca como malas algunas palabras porque?

Las palabras que marca erróneas son: Set the current cell to the cell in column 1, Row 0
« Última modificación: 26 de Julio 2015, 20:59 por Alex Rodríguez »

Mastermind

  • Experto
  • *****
  • Mensajes: 536
    • Ver Perfil
Set the current cell to the cell in column 1, Row 0 es un comentario, por tanto esa línea tiene que empezar con un apóstrofe de comentario, o bien eliminarla.

'Set the current cell to the cell in column x, Row y (o eliminar la línea)

Saludos

Lepizz

  • Sin experiencia
  • *
  • Mensajes: 40
    • Ver Perfil
haha no vi eso -.-
gracias, y si guardo la linea en el campo (6,4) x ejemplo, siempre que actualize me llevara ahí, existe forma de que me lleve a la fila en que me encuentre al momento de actualizar?

Lepizz

  • Sin experiencia
  • *
  • Mensajes: 40
    • Ver Perfil
jeje me costo pero tome la idea que me diste y lo acople de forma que me funcionara bien, gracias amigo te lo agradezco mucho (Y)
desde Costa Rica, SALUDOS!!

Lepizz

  • Sin experiencia
  • *
  • Mensajes: 40
    • Ver Perfil
por cierto aca esta el codigo xD seguro seguire instruyendome en estos foros asi que pondre mi dranito de arena
Código: [Seleccionar]
    ''BOTON ACTUALIZAR

    Private Sub Button5_Click(sender As Object, e As EventArgs) Handles Button5.Click

        Dim record_actual As Integer

        record_actual = Esc_SalarialBindingSource.Position
        Me.Validate()
        Me.Esc_SalarialBindingSource.EndEdit()

        Me.Esc_SalarialTableAdapter.Update(Me.Database1DataSet.Esc_Salarial)
        Me.Esc_SalarialTableAdapter.Fill(Me.Database1DataSet.Esc_Salarial)
        Esc_SalarialBindingSource.Position = record_actual

    End Sub

 

Sobre la educación, sólo puedo decir que es el tema más importante en el que nosotros, como pueblo, debemos involucrarnos.

Abraham Lincoln (1808-1865) Presidente estadounidense.

aprenderaprogramar.com: Desde 2006 comprometidos con la didáctica y divulgación de la programación

Preguntas y respuestas

¿Cómo establecer o cambiar la imagen asociada (avatar) de usuario?
  1. Inicia sesión con tu nombre de usuario y contraseña.
  2. Pulsa en perfil --> perfil del foro
  3. Elige la imagen personalizada que quieras usar. Puedes escogerla de una galería de imágenes o subirla desde tu ordenador.
  4. En la parte final de la página pulsa el botón "cambiar perfil".