none
Ingresar datos a un list RRS feed

  • Pregunta

  • struct tipoRegistro
            {
                public int id;
                public string nombre;
                public double mat1;
                
            }
            //
            public void Form1_Load()
            {
                List<tipoRegistro> listado = new List<tipoRegistro>();
                // es crear un ciclo para que ingrese el numero de alumnos que tenga el grupo  y con el listado add que se repita y guardar toda la informacion 
                listado.Add(new tipoRegistro { id = 1, nombre = "Ejemplo1", mat1 = 12.0 });
                listado.Add(new tipoRegistro { id = 2, nombre = "Ejemplo2", mat1 = 12.0 });
                listado.Add(new tipoRegistro { id = 3, nombre = "Ejemplo3", mat1 = 12.0 });
    
    
    
                Console.WriteLine(listado.Where(a => a.id == 2).FirstOrDefault().nombre);
                Console.WriteLine(listado.Where(a => a.id == 2).FirstOrDefault().mat1);
                
    Hola que tal este es mi codigo lo que quiero hacer es que pida el numero de personas que son para que pida los datos y agregarlos en el list. Espero Alguien me pueda ayudar
    miércoles, 22 de enero de 2020 19:22

Respuestas

  • Hola Carlos

    Se usa Console.ReadLine() que lee un string del teclado y lo devuelve.

    Por ejemplo:

    tipoRegistro registro;

    registro = new tipoRegistro(); Console.WriteLine("Ingresa el id:"); registro.id = Convert.ToInt32(Console.ReadLine()); // lee un string y lo convierte a int Console.WriteLine("Ingresa el nombre:"); registro.nombre = Console.ReadLine(); // lee un string Console.WriteLine("Ingresa el mat1:"); registro.mat1 = Convert.ToDouble(Console.ReadLine()); // lee un string y lo convierte a double listado.Add(registro);

    Y esto lo repetis tantas veces como registros quieras guardar en el listado. (Supongo que luego querras guardarlo en un archivo?)

    Saludos

    Pablo

    • Marcado como respuesta carlos70alex jueves, 23 de enero de 2020 0:04
    miércoles, 22 de enero de 2020 23:12

Todas las respuestas

  • hola

    >>que pida el numero de personas que son para que pida los datos y agregarlos en el list.

    Que pida los datos de que forma ? estas en un desarrollo winform deberias poner controles como ser el ListBox, DataGridView, etc

    para pedir que ingrese los datos en la pantalla y despues pasas estos a una List<>

    Pero no mencionas como es que se pide al usuario que ingrese la informacion en el form

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    miércoles, 22 de enero de 2020 19:43
  • Tengo 3 Grupos y creo 3 listas pero en cada grupo debe llevar alumnos con calificación, que el usuario diga cuantos alumnos son para guardarlos en la lista. Entonces toda esa información debe ser ingresada a través de la consola.  
    miércoles, 22 de enero de 2020 22:21
    1. // Añadir una gama de artículos  
    2. cadena [] autores = {  "Mike Gold" ,  "Don Box" ,  
    3.                         "Sundar Lal" ,  "Neel Beniwal"  };  
    4. AuthorList.AddRange (autores);   

    No se utiliza esto??

    miércoles, 22 de enero de 2020 22:33
  • Hola Carlos

    Se usa Console.ReadLine() que lee un string del teclado y lo devuelve.

    Por ejemplo:

    tipoRegistro registro;

    registro = new tipoRegistro(); Console.WriteLine("Ingresa el id:"); registro.id = Convert.ToInt32(Console.ReadLine()); // lee un string y lo convierte a int Console.WriteLine("Ingresa el nombre:"); registro.nombre = Console.ReadLine(); // lee un string Console.WriteLine("Ingresa el mat1:"); registro.mat1 = Convert.ToDouble(Console.ReadLine()); // lee un string y lo convierte a double listado.Add(registro);

    Y esto lo repetis tantas veces como registros quieras guardar en el listado. (Supongo que luego querras guardarlo en un archivo?)

    Saludos

    Pablo

    • Marcado como respuesta carlos70alex jueves, 23 de enero de 2020 0:04
    miércoles, 22 de enero de 2020 23:12
  • hola

    Si es una aplicacion wimform el Console.ReadLine() no aplica

    >>que el usuario diga cuantos alumnos son para guardarlos en la lista

    Porque no le pones un textbox donde ingrese el numero de alumnos, asi tendras el dato para iterar y crear lo items

    Igualmente creo que el problema que tienes es de diseño de la interfaz de usuario, si usas un DataGridView podrias definir columnas para poner cada dato del alumns en una fila, entonces creas tantas rows en el grid como alumnas tengas y pones en las columnas sus datos

    Programmatically add new rows to an unbound DataGridView control in C#

    >>Tengo 3 Grupos y creo 3 listas pero en cada grupo debe llevar alumnos con calificación

    esto no lo entendi, a que 3 listas haces referencia ?

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina


    miércoles, 22 de enero de 2020 23:48
  • Hola Leandro

    Se y creo que muchos también saben que sos un gran capo en programación.

    Pero si lees tan rápido, te pasa como aquí, que no viste que Carlos escribió que estaba usando la consola. 

    También, a veces algunos miembros del Foro "hacen referencia" a cosas que todavía no implementaron. 

    Saludos y respetos,

    Pablo

    jueves, 23 de enero de 2020 1:29
  • Gracias por atender mi pregunta, de mucha ayuda. 
    jueves, 23 de enero de 2020 14:17
  • >>Pero si lees tan rápido, te pasa como aquí, que no viste que Carlos escribió que estaba usando la consola.

    no lei rapido, sino que el planteo es inconsistente, menciona al pasa consola, pero el codigo que muestras esta usando el Form1_Load ese evento no es de consola

    Si hubiera puesto codigo que usa el Main() eso seria muy distinto

    Una cosa es interpretacion y otra es explicarse de forma incorrecta generando confusion

    >>Gracias por atender mi pregunta

    recomendaria, la proxima vez, se plantee de forma correcta que tipo de aplicacion estas desarrollando

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    jueves, 23 de enero de 2020 15:09
  • Tenés razón Leandro, yo no leo rápido pero mi vista es algo mala, leí todo y no presté atención al nombre del método Form1_Load que Carlos puso allá arriba, ahora entiendo que eso te confundió.

    Saludos

    jueves, 23 de enero de 2020 21:26