Uso del List<>

Iniciado por zapala76, 24 Octubre 2011, 20:04 PM

0 Miembros y 1 Visitante están viendo este tema.

zapala76

Hola, quería pedirles si alguien me puede decir como se pasan los datos de un List<> a un textbox, osea el nombre a txt_nom, el apellido al txt_ape, y asi sucesivamente. Muchas gracias y saludos.-

Pablo Videla

Cita de: zapala76 en 24 Octubre 2011, 20:04 PM
Hola, quería pedirles si alguien me puede decir como se pasan los datos de un List<> a un textbox, osea el nombre a txt_nom, el apellido al txt_ape, y asi sucesivamente. Muchas gracias y saludos.-

Tienes que sacar el objeto del list para asignarle el valor

list.getObject(index).getNombre(); almenos asi es en java, debe ser casi lo mismo.

zapala76

Gracias por responder pero no logro entender bien lo que me decis, pongo el codigo por si se entiende mejor:

public List<Usuario> cons_usuario(string user)
        {
            List<Usuario> busca_usuario = new List<Usuario>();
            string buscar = "select * from usuarios where apellido = '" + user + "'";

            if (Conexion.conectar())
            {
                DataTable bus = new DataTable();
                bus = Conexion.LeerTabla(buscar);

                foreach (DataRow row1 in bus.Rows) {
                    Usuario bus_user = new Usuario();
                    bus_user.Nombre = row1["Nombre"].ToString();
                    bus_user.Apellido = row1["Apellido"].ToString();
                    bus_user.Estado = row1["Estado"].ToString();
                    bus_user.FechaAlta = Convert.ToDateTime(row1["Fecha_alta"]);
                    bus_user.Rol = row1["Rol"].ToString();
                    bus_user.Legajo = row1["Legajo"].ToString();
                    busca_usuario.Add(bus_user);
                }
            }
            return busca_usuario;
        }

        public List<Usuario> Trae_Usuarios()
        {
            List<Usuario> datos_usuario = new List<Usuario>();
            string consulta = "select * from usuarios order by apellido asc";
           
            if (Conexion.conectar())
            {
               
                DataTable ver = new DataTable();
                ver = Conexion.LeerTabla(consulta);
               

                foreach (DataRow row in ver.Rows)
                {
                    Usuario user = new Usuario();
                    user.Nombre = row["Nombre"].ToString();
                    user.Apellido = row["Apellido"].ToString();
                    user.Estado = row["Estado"].ToString();
                    user.FechaAlta =  Convert.ToDateTime(row["Fecha_Alta"]);
                    user.Rol = row["Rol"].ToString();
                    user.Legajo = row["Legajo"].ToString();
                    datos_usuario.Add(user);
                }
               

            }

            else

                MessageBox.Show("problemas al conectar");
            return datos_usuario;
        }
    }

osea que ahi guardo los datos en la lista, pero como os recupero y los paso a un textbox, paciencia con mi ignorancia, jajaja.-

Pablo Videla

Trae_Usuarios().getObject(indice).nombre;


Aunque la inserciones a la bd y el registro al List lo haria de diferente forma, intenta con lo que te dije.

zapala76

Buenisimo el dato, mil gracias aunque el getObject no esta en c# aparentemente, pero lo hice con uno equivalente o que por lo menos funciona:

private void cmb_bus_user_SelectedIndexChanged(object sender, EventArgs e)
        {
            string modify = cmb_bus_user.SelectedValue.ToString();
            RepUsuario trae = new RepUsuario();

            txt_modifNom.Text = trae.cons_usuario(modify).ElementAtOrDefault(0).Nombre;
            txt_modif_Ape.Text = trae.cons_usuario(modify).ElementAtOrDefault(0).Apellido;
            dtp_modifFA.Value = trae.cons_usuario(modify).ElementAtOrDefault(0).FechaAlta;
            cmb_modifRol.Text = trae.cons_usuario(modify).ElementAtOrDefault(0).Rol;
            txt_modifLegajo.Text = trae.cons_usuario(modify).ElementAtOrDefault(0).Legajo;
            cmb_modifEstado.Text = trae.cons_usuario(modify).ElementAtOrDefault(0).Estado;
        }

de esta forma me funciona, asi quegracias otra vez y saludos.-

Pablo Videla

Cita de: zapala76 en 24 Octubre 2011, 22:00 PM
Buenisimo el dato, mil gracias aunque el getObject no esta en c# aparentemente, pero lo hice con uno equivalente o que por lo menos funciona:

private void cmb_bus_user_SelectedIndexChanged(object sender, EventArgs e)
        {
            string modify = cmb_bus_user.SelectedValue.ToString();
            RepUsuario trae = new RepUsuario();

            txt_modifNom.Text = trae.cons_usuario(modify).ElementAtOrDefault(0).Nombre;
            txt_modif_Ape.Text = trae.cons_usuario(modify).ElementAtOrDefault(0).Apellido;
            dtp_modifFA.Value = trae.cons_usuario(modify).ElementAtOrDefault(0).FechaAlta;
            cmb_modifRol.Text = trae.cons_usuario(modify).ElementAtOrDefault(0).Rol;
            txt_modifLegajo.Text = trae.cons_usuario(modify).ElementAtOrDefault(0).Legajo;
            cmb_modifEstado.Text = trae.cons_usuario(modify).ElementAtOrDefault(0).Estado;
        }

de esta forma me funciona, asi quegracias otra vez y saludos.-

Muy bien, es que lo te dije en java porque no me acuerdo en C# y es casi lo mismo, asi que me alegro que te sirviera, recuerda que solo obtendras el primer objeto de ese List