none
Pasar valores de fila en datagrid a variable WPF RRS feed

  • Pregunta

  • Buen día, me estoy iniciando en C# y WPF, el día de hoy me resulta esta duda, eh tratado de varias maneras pero no lo logro.
    Lo que quiero hacer es lo siguiente, tengo un datagrid en un formulario donde se cargan datos de una tabla de sql, hasta ahi todo bien, pero quiero que cuando de click en alguna fila del datagrid, sus valores se pasen a una serie de variables con las cuales despuésllenare varios textbox.

    Como siempre agradezco de su apoyo y atención.

    buen día para todos.


    Luis

    • Cambiado Karen Malagón lunes, 21 de septiembre de 2015 23:01 WPF issue
    lunes, 21 de septiembre de 2015 14:13

Respuestas

  • Aproveche una respuesta tuya Leandro en uno de los threads de este foro, la dejare por aquí por si a alguién lo necesita:

    DataRowView row = datagrid1.selecteditem as Datarowview;
    
    messagebox.show(Convert.ToString(row["idproducto"]));

    De esta manera puedo recorrer la fila para extraer los valores y en mi caso, asignarlos a una lista.

    Gracias a todos.


    Luis

    • Marcado como respuesta lfmluis martes, 22 de septiembre de 2015 14:05
    martes, 22 de septiembre de 2015 14:04

Todas las respuestas

  • hola

    estas implementando algun patron como ser MVVM ? o trabajas con codebehind en el evento que se define

    el datagrid define eventos

    DataGrid Events

    quizas podrias usar el

    SelectionChanged

    en este evento tomarias la seleccio para asignar la variable

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    lunes, 21 de septiembre de 2015 16:03
  • Como siempre gracias por la respuesta Leandro, si mi plan es utilizar el evento SelectionChanged, verás vengo de desarrollar en VB.NET, con DataGridViews, eh tratado de utilizar las lineas de codigo similares para que al momento de hacer click en la fila se obtengan lo valores de la misma y los pueda guardar en una o varias variables, desconozco completamente como hacerlo, cualquier sugerencia es bienvenida.

    Muchas gracias.


    Luis

    lunes, 21 de septiembre de 2015 16:23
  • Hola, te dejo un ejemplo que he usado con VB. Saludos

    Private Sub DataGridView1_SelectionChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles DataGridView1.SelectionChanged
       'Si hay alguna fila seleccionada (debemos comprobarlo)
       'IMPORTANTE: Es aconsejable poner la propiedad SelectionMode del datagridview a: FULLROWSELECT
       If DataGridView1.SelectedRows.Count > 0 Then
          txtColumna1.Text = DataGridView1.Item("Column1", DataGridView1.SelectedRows(0).Index).Value
          txtColumna2.Text = DataGridView1.Item("Column2", DataGridView1.SelectedRows(0).Index).Value
       End If
    End Sub


    "La vida seria mucho mas sencilla si le pudieramos hechar un ojo a su codigo fuente."

    Humberto De la Rosa
    Front END Design, Web Programmer, Android Developer


    Twitter: @bethofantoche
    Blog: Humberto Apps

    lunes, 21 de septiembre de 2015 16:28
  • Que tal Humberto, eh probado tu respuesta pero aun sin resultado, en WPF no hay DataGridView como el de .NET convencional, y algunas propiedades no aparecen como en tu ejemplo, aun así muchas gracias por aportar.

    Luis

    lunes, 21 de septiembre de 2015 16:42
  • hola

    >>si mi plan es utilizar el evento SelectionChanged, verás vengo de desarrollar en VB.NET, con DataGridViews, eh tratado de utilizar las lineas de codigo

    es que winform no tiene nada que ver con xaml

    si en el diseñador seleccionas el DataGrid podrias ver las propiedades del mismo (quizas presionando F4) alli mismo podrias acceder a los eventos y al hacer doble click se crearia la estructura del metodo asociado al evento del control

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina


    lunes, 21 de septiembre de 2015 17:09
  • Aproveche una respuesta tuya Leandro en uno de los threads de este foro, la dejare por aquí por si a alguién lo necesita:

    DataRowView row = datagrid1.selecteditem as Datarowview;
    
    messagebox.show(Convert.ToString(row["idproducto"]));

    De esta manera puedo recorrer la fila para extraer los valores y en mi caso, asignarlos a una lista.

    Gracias a todos.


    Luis

    • Marcado como respuesta lfmluis martes, 22 de septiembre de 2015 14:05
    martes, 22 de septiembre de 2015 14:04