none
Visualizar arreglo en un listbox C#

    Dotaz

  • Hola quiero visualizar los elementos de un arreglo en una listbox mi codigo esta asi:

      NumSepaERG[0] = Convert.ToDouble(columnas[1]);
                                    ListBox listbox2 = new ListBox();
                                    listbox2.Items.Add(NumSepaERG[0]);

    pero no se como visualizar los elementos del arreglo NumSepaERG[0] en un listbox, el arreglo esta en una clase y mi listbox esta en una windows form, tendria que importar el arreglo a la windows form?

    Gracias.

    10. října 2012 14:53

Odpovědi

  • Si los datos contenidos en NumSepaERG se cargan en el constructor de la clase Import te sirve el ejemplo que te paso:

    Cuando instancio la clase esta carga la variable "publica" NumSepaERG  y entonces mi objeto instanciado en form1 ya tiene esa variable.

    lo que hacemos con el for es recorrerlo e insertar cada uno de los elementos en el listbox

                Import arreglo = new Import();
                
                 for (int i = 0; i < arreglo.NumSepaERG().Length; i++)
                {
                    this.listBox2.Items.Add(arreglo.NumSepaERG()[i]);
                } 
    

    Recuerda que debes tener esa variable publica, y que la carga debe estar en el constructor... si no es asi debes llamar al metodo que lo carga antes de hacer uso de ella...

    saludos...


    Danicuco - 2012

    • Označen jako odpověď Carba540 11. října 2012 15:41
    10. října 2012 21:59

Všechny reakce

  • Hola Carba540, te dejo un ejemplo simple que quizas te ayude a solicionar tu problema o por lo menos te dé algunas ideas...

    Si tu arreglo esta en otra clase, basta con que instancies esa clase y obtengas tu arreglo en mi caso es un arreglo de string[] y esta es la clase del arreglo:

        class ClassArreglo
        {
            public string[] Miarreglo()
            {
                string[] arregloEnteros = new string[] { "Uno", "Dos", "Tres", "Cuatro", "Cinco" };
                return arregloEnteros;
            }
        }

    Aqui la parte del form: como te ya te dije instancio la clase, obtengo el arreglo y lo asigno al listbox mediante el metodo addrange o si prefieres elementos determinados con el metodo add()...  mas info: http://msdn.microsoft.com/es-es/library/a585aede.aspx

               //INSTANCIA LA CLASE QUE CONTIENE TU ARREGLO:
                ClassArreglo miclase = new ClassArreglo();
    
                //UTILIZA LA METODO ADDRANGE PASALE TU ARREGLO COMPLETO (SIEMPRE Y CUANDO IMPLEMENTE OBJECT):
                listBox1.Items.AddRange(miclase.Miarreglo());
    
                //O UTILIZA LA FUNCIONALIDAD ADD PARA AÑADIR UN ELEMENTO CONCRETO:
                listBox1.Items.Add(miclase.Miarreglo()[0]);

    Es simple ;-)

    Saludos... 


    Danicuco - 2012

    10. října 2012 19:25
  • Hola Danicuco, la variable NumSepaERG esta dentro de una clase llamada Import y guarda los valores de una columna de datos que leo de un archico .txt, esta columna la quiero mandar a una listbox en mi Form1, como lo pondria para instanciarlo en mi Form1?

    NumSepaERG lo tengo declarado asi:

    double[] NumSepaERG;

    Gracias.


    • Upravený Carba540 10. října 2012 19:43
    10. října 2012 19:42
  • Si es un arreglo del tipo double... prueba con esto:

        for (int i = 0; i < NumSepaERG().Length; i++)
                {
                    listBox1.Items.Add(NumSepaERG()[i]);
                } 

    Saludos,


    Danicuco - 2012

    10. října 2012 19:59
  • Entonces cuando quiera instanciarlo en la Form1 seria algo asi?

     

    Import arreglo = new Import();               

    this.listBox2.Items.Add(Import.Miarreglo)


    La parte de "Miarreglo" es la que no se como puedo escribirla, ahi es donde deberia de ir NumSepaERG que es de donde quiero ver los valores que se almacenaron cuando se leyo el archivo .txt.

    10. října 2012 20:05
  • Si los datos contenidos en NumSepaERG se cargan en el constructor de la clase Import te sirve el ejemplo que te paso:

    Cuando instancio la clase esta carga la variable "publica" NumSepaERG  y entonces mi objeto instanciado en form1 ya tiene esa variable.

    lo que hacemos con el for es recorrerlo e insertar cada uno de los elementos en el listbox

                Import arreglo = new Import();
                
                 for (int i = 0; i < arreglo.NumSepaERG().Length; i++)
                {
                    this.listBox2.Items.Add(arreglo.NumSepaERG()[i]);
                } 
    

    Recuerda que debes tener esa variable publica, y que la carga debe estar en el constructor... si no es asi debes llamar al metodo que lo carga antes de hacer uso de ella...

    saludos...


    Danicuco - 2012

    • Označen jako odpověď Carba540 11. října 2012 15:41
    10. října 2012 21:59
  • para que el for si se puede usar el foreach que es mucho mejor

    foreach(double item in arreglo.NumSepaERG()){

       listbox1.Items.Add(ite.ToString());

    }

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina

    11. října 2012 3:24