elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Trabajando con las ramas de git (tercera parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  .NET (C#, VB.NET, ASP) (Moderador: kub0x)
| | | |-+  ListView Y SUBITEMS ( C# )
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: ListView Y SUBITEMS ( C# )  (Leído 12,586 veces)
Codename!!


Desconectado Desconectado

Mensajes: 883



Ver Perfil
ListView Y SUBITEMS ( C# )
« en: 22 Marzo 2010, 23:30 pm »

Buenas, tengo una duda, se que para añadir items a un listview se hace asi :

Código:
ListViewItem item1 = new ListViewItem("item1",0);
            // Place a check mark next to the item.
            item1.Checked = true;
            item1.SubItems.Add("1");
            item1.SubItems.Add("2");
            item1.SubItems.Add("3");

peeeeeeeeero....

si ya tienes el item añadido de antes y simplemente quieres añadirle ahora un subitem???
tengo que borrarlo y hacerlo de esa manera??? supongo que habra alguna manera no ?


En línea

No te dejes mover por las masas, se tu mismo.




raul338


Desconectado Desconectado

Mensajes: 2.633


La sonrisa es la mejor forma de afrontar las cosas


Ver Perfil WWW
Re: ListView Y SUBITEMS ( C# )
« Respuesta #1 en: 22 Marzo 2010, 23:47 pm »

Código
  1. ListViewItem item = listview.Items.Find("TextoDelItem");
  2. item.SubItems.Add("xD");
  3.  

Segun mis recuerdos eso no me funciono JAJA XD, ahora te doy otro ejemplo que si me funciono (pero era de menor rendimiento)


Edit: Codigo extraido del intento de pasar un codigo de vb6 a .net, pero lo deje por vagancia y otros temas :P

Código
  1. For Each i As ListViewItem In lstVentanas.Items
  2.                            ' NOTA: Aca no se porque, pero no me funciono ni el Find, FindKey, Contains de ListView
  3.                            '       para saber si ya estaba puesto el item :(
  4.                            '       Por lo tanto tuve que hacer esta "robusta" comparacion
  5.  
  6.                            tempHandle = CType(i.Tag, IntPtr)
  7.  
  8.                            '' Primero nos fijamos si la ventana sigue existiendo, si no, la eliminamos
  9.                            If IsWindow(tempHandle) Then
  10.                                '' Esta en la lista, por lo tanto lo actualizamos
  11.                                If hwnd = tempHandle Then
  12.                                    insert = False
  13.                                    If titulo <> i.Text Then i.Text = titulo
  14.                                    If i.SubItems(1).Text <> IsWindowVisible(hwnd).ToString() Then i.SubItems(1).Text = IsWindowVisible(hwnd).ToString()
  15.                                End If
  16.                            Else
  17.                                '' No existe mas ese handle, la borramos de la lista
  18.                                lstVentanas.Items.Remove(i)
  19.                            End If
  20.                        Next
  21.  

Lo que hacia el code era verificar si el item existia, por lo cual ninguna de las funciones que traia el listview me funciono, y lo tuve que buscar a mano. Si existia lo actualizaba, y si no existia mas la ventana la eliminaba

El proyecto era un ocultador de ventanas "para privacidad" :rolleyes: que salio en vb6, cuando lo quise pasar a .net para ampliarlo lo deje en el camino jeje


« Última modificación: 22 Marzo 2010, 23:58 pm por raul338 » En línea

Codename!!


Desconectado Desconectado

Mensajes: 883



Ver Perfil
Re: ListView Y SUBITEMS ( C# )
« Respuesta #2 en: 23 Marzo 2010, 16:44 pm »

Hola otra vez!

mira lo que he encontrado y funciona!

Código:
ListViewItem itemEncontrado = listView1.FindItemWithText(a,true,0);

Lo del true,0 eso se puede omitir pero bueno.


pero lo que sigo sin poder hacer es si tengo 3 columnas, y quiero meter datos en la columna 3 sin meter nada en la columna dos no puedo!!

he probgado esto:
Código:
itemEncontrado.SubItems[INDEX DE MI COLUMNA].Text=("hola caracola");

pero me salta un error como que me he salido del array...solo me deja poner el 0 y entonces sobrecribe lo que hay en la 1º columna...



solo me funciona poniendo a mano esto:
Código:
ListViewItem itemEncontrado = listView1.FindItemWithText(a,true,0);
            itemEncontrado.SubItems.Add("");
            itemEncontrado.SubItems.Add("Hola Caracola,estoy en la 3º columna");
Pero esto ultimo es un poco timo....


argg! a alguien se le ocurre como??
En línea

No te dejes mover por las masas, se tu mismo.




[D4N93R]
Wiki

Desconectado Desconectado

Mensajes: 1.646


My software never has bugs. Its just features!


Ver Perfil WWW
Re: ListView Y SUBITEMS ( C# )
« Respuesta #3 en: 23 Marzo 2010, 17:12 pm »

La mejor manera, que he encontrado yo, para identificar items de un ListView es al momento de crear el item le añades el objeto de referencia en la propiedad TAG.. en caso de que estes usando objetos...

Sino es mejor con el Name, o algo, pero NO con el Text ya que en caso de que varíe pierde la identidad..


Un saludo!
En línea

raul338


Desconectado Desconectado

Mensajes: 2.633


La sonrisa es la mejor forma de afrontar las cosas


Ver Perfil WWW
Re: ListView Y SUBITEMS ( C# )
« Respuesta #4 en: 23 Marzo 2010, 21:58 pm »

@D4N93R: Si ves mi codigo, veras que hago eso :P

@Codename: Es ovbio, si el item no tiene subcolumnas no podes modificarlas. Pero el metodo Add creo que tiene una sobrecarga que puedes especificar el id o nombre de la columna a la que quieras agregar
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
ingresar subitems en un listview
.NET (C#, VB.NET, ASP)
llAudioslavell 6 11,735 Último mensaje 14 Septiembre 2011, 06:30 am
por llAudioslavell
Editar SubItems de un listview en VB.NET
.NET (C#, VB.NET, ASP)
bybaal 4 8,187 Último mensaje 8 Enero 2016, 20:45 pm
por bybaal
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines