Columnas de vista de lista
Frecuentes
Visto 3,578 veces
0
Tengo 2 columnas en un ListView
. Mi "C:\file.txt" se ve así:
1;aaa
2;bbb
3;ccc
4;ddd
y así. (cada número y texto en línea separada) Mi código:
FileStream spis = File.Open("C:\\file.txt", FileMode.Open, FileAccess.Read);
StreamReader yaRead = new StreamReader(spis);
string yaView = yaRead.ReadToEnd();
yaRead.Close();
spis.Close();
String[] yaArray = yaView.Split(new char[] {';'});
foreach (string ya in yaArray)
{
listView1.Items.Add(ya);
}
Resulta
1
aaa
bbb
(...)
...en la primera columna y nada en la segunda columna. Por favor ayúdame a arreglarlo.
2 Respuestas
2
Agrega columnas a una vista de lista a través de la propiedad SubItems de un ListViewItem.
La forma más sencilla es hacer algo como:
ListViewItem newItem = new ListViewItem("1");
newItem.SubItems.Add("aaa");
listView1.Items.Add(newItem);
Si tomamos su ejemplo, simplemente podemos hacer algo como lo siguiente:
string[] yaArray = yaView.Split(new string[] { Environment.NewLine }, StringSplitOptions.None);
Esto le dará una matriz que se parece a:
[1;aaa]
[2;bbb]
[3;ccc]
[4;ddd]
Hemos dividido en función de la nueva línea en lugar del punto y coma.
Entonces es simplemente cuestión de hacer lo siguiente:
foreach(string lineItem in yaArray)
{
string[] listViewRow = lineItem.Split(new string[] { ";" }, StringSplitOptions.None); //Now we split on the semi colon to give us each item
ListViewItem newItem = new ListViewItem(listViewRow[0]);
newItem.SubItems.Add(listViewRow[1];
listView1.Items.Add(newItem);
}
Eso debería darte lo que quieres.
contestado el 03 de mayo de 12 a las 22:05
0
Por favor, agregue SUBelementos a la lista
foreach(var line in File.ReadAllLines(@"C:\file.txt"))
{
listView1.Items.Add(line.Split(';'));
}
contestado el 03 de mayo de 12 a las 22:05
No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas c# .net listview or haz tu propia pregunta.
A pesar de agregar una respuesta, me di cuenta de que esto está parcialmente respondido en stackoverflow.com/questions/473148/… - dash