CLR: .Net / Mono / Boo / Otros CLR > C#
listbox y colecciones
(1/1)
Jimi_26:
Hola!
estoy pasando un listado a un lisbox a traves de un arraylist. El hecho es que cuando coloco las frases o palabras en ¡el listbox1, me aparece previo a éstas, la definición " (Colección) " , con lo que, si le paso 3 frases antes me aparece en el listbox algo asi:
(colección)
(colección)
(colección)
frase1
frase 2
frase3
He tratado de ver si es un detalle de las propiedades del listbox, pero no he encontrado nada...solo una propiedad donde indica de donde se sacan los datos, que por defecto esta en "collection" ( y si no se puede modificar por tablas...).
¿ Cómo puedo quitar esas notificaciones de (coleccion) en mi listado?
Grácias
gabio2:
Podrías colocar el código donde llenas el listbox, para ver en donde está el posible error.
Saludos!
Jimi_26:
Hola gabio, la verdad es que he decidido hacerlo todo desde dos listbox diferentes, muucho mas fácil para programar. Mi idea era crear una clase con 2 strings mas un reproductor de sonido de uno de esos dos string:
la clase:
--- Código: C# ---using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;using System.Collections;using System.IO;using System.Media;namespace WindowsFormsApplication1{ class FrasesSonido { public string FraseEspañol { get; set; } public string FraseRuso { get; set; } public string rutaArchivoSonido { get; set; } public SoundPlayer sonido = new SoundPlayer(); public string Reporte() { string Mensaje = string.Format(" {0}", FraseEspañol); return Mensaje; } public string Reporte2() { string Mensaje2 = string.Format("{0}", FraseRuso); return Mensaje2; } }}
y el form:
--- Código: C# ---using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Linq;using System.Text;using System.Threading.Tasks;using System.Windows.Forms;using System.Collections;using System.Media; namespace WindowsFormsApplication1 { public partial class Form1 : Form { public Form1() { InitializeComponent(); } ArrayList listado = new ArrayList(); private void button1_Click(object sender, EventArgs e) { ///// frase 1 ///////// FrasesSonido f1 = new FrasesSonido(); f1.FraseEspañol = "Hola"; f1.FraseRuso = "Привет"; f1.rutaArchivoSonido= f1.sonido.SoundLocation = "C:/Users/jimi/Documents/Visual Studio 2012/Projects/Idiomas/prueba.wav"; //f1.sonido.Play(); ///// frase 2 ///////// FrasesSonido f2 = new FrasesSonido(); f2.FraseEspañol = "Adiós"; f2.FraseRuso = "Пока"; f2.rutaArchivoSonido = f2.sonido.SoundLocation = "C:/Users/jimi/Documents/Visual Studio 2012/Projects/Idiomas/prueba.wav"; //f2.sonido.Play(); ///// frase 3 ///////// FrasesSonido f3 = new FrasesSonido(); f3.FraseEspañol = "¿Cómo está usted?"; f3.FraseRuso = "как дела?"; f3.rutaArchivoSonido = f2.sonido.SoundLocation = "C:/Users/jimi/Documents/Visual Studio 2012/Projects/Idiomas/prueba.wav"; //f3.sonido.Play(); ///// frase 4 ///////// FrasesSonido f4 = new FrasesSonido(); f4.FraseEspañol = "Bien"; f4.FraseRuso = "harasho"; f4.rutaArchivoSonido = f4.sonido.SoundLocation = "C:/Users/jimi/Documents/Visual Studio 2012/Projects/Idiomas/prueba.wav"; //f4.sonido.Play(); ///// frase 5 ///////// FrasesSonido f5 = new FrasesSonido(); f5.FraseEspañol = "aaaaa1"; f5.FraseRuso = "aaaaa2"; f5.rutaArchivoSonido = f4.sonido.SoundLocation = "C:/Users/Jimi/Documents/Visual Studio 2012/Projects/Idiomas/prueba.wav"; //f5.sonido.Play(); //// agregar a listado ////// listado.Add(f1); listBox1.Items.Add(f1.FraseEspañol); // listBox1.Items.Add(listado); listado.Add(f2); listBox1.Items.Add(f2.FraseEspañol); //listBox1.Items.Add(listado); listado.Add(f3); listBox1.Items.Add(f3.FraseEspañol); //.Items.Add(listado); listado.Add(f4); listBox1.Items.Add(f4.FraseEspañol); //listBox1.Items.Add(listado); listado.Add(f5); listBox1.Items.Add(f5.FraseEspañol); //listBox1.Items.Add(listado); //MostrarEnListBoxYTextBox(); textBox2.Text = listado.Count.ToString();// longitud total actual del listBox //// mostrar todo lo añadido en ListBox1 } public void MostrarEnListBox() { } public void MostrarEnListBoxYTextBox() { foreach (object objeto in listado) { FrasesSonido frasex = (FrasesSonido)objeto; listBox1.Items.Add(frasex.Reporte().ToString()); textBox1.Text = frasex.Reporte2().ToString(); } } public void listView1_SelectedIndexChanged(object sender, EventArgs e) { // Get the currently selected item in the ListBox. string curItem = listBox1.SelectedItem.ToString(); textBox1.Text = curItem; PosicionSeleccionEnListBox(sender, e); txtbPosicionActualListado.Text= listado.Count.ToString(); // PosicionSeleccionEnArrayList(); txtbPosicionActualListado.Text = listado.Count.ToString(); MessageBox.Show("el tamaño de list box es " + listBox1.Items.Count.ToString()); MessageBox.Show("el tamaño de ArrayList " + listado.Count); } public void PosicionSeleccionEnListBox(object sender, EventArgs e) { int item =listBox1.SelectedIndex; textBox3.Text = item.ToString() ; } public void PosicionSeleccionEnArrayList() { int item = listBox1.SelectedIndex,i=0; for ( i = 0; i <= listado.Count;i++ ) // recorrer listbox1 y array list en busqueda de igualdades { if (listBox1.Text == listado[i].ToString()) { MessageBox.Show("coinidencia en :" + listado[i].ToString()); } string ic= item.ToString(); } } private void listView1_SelectedIndexChanged_1(object sender, EventArgs e) { } }//}
Bueno parte de codigo me sirve para ver en que posicion guarda cada string y demas, (me fastidia un poco ver las variables por debugger)
Navegación
Ir a la versión completa