Foro de elhacker.net

Programación => .NET (C#, VB.NET, ASP) => Mensaje iniciado por: Lain0x en 7 Noviembre 2012, 19:31 pm



Título: Eliminar elementos ListBox
Publicado por: Lain0x en 7 Noviembre 2012, 19:31 pm
Hola, estoy usando Visual Studio 2008. Y Me surge una duda. Tengo un botón que elimina el dato que selecciono en el listbox. Si está vacía no hace nada al pulsar el botón.
El problema es que cuando la listbox tiene elementos, y presiono el botón eliminar sin haber seleccionad ningún item, me arroja este error:

"InvalidArgument=El valor de '-1' no es válido para 'index'. Nombre del parámetro: index"


Título: Re: Eliminar elementos ListBox
Publicado por: Lain0x en 7 Noviembre 2012, 19:35 pm
Ya lo arreglé:

Código:
ElseIf ListBox1.SelectedIndex <> -1 Then


Título: Re: Eliminar elementos ListBox
Publicado por: Lain0x en 7 Noviembre 2012, 20:39 pm
Tengo una duda en el mismo programa y está relacionado con la función eliminar.

Tengo un label que cuenta cada elemento a medida que voy ingresandolos al listbox.

Y al seleccionar un item y eliminarlo, el label muestra los elementos que ha contado hasta ahora, pero no se va actualizando. Traté de hacer un For hacia atrás en el botón eliminar, aplicandolo de la misma forma como hice el contar los items ingresados, pero no muestra nada.

Código del Botón ingresar:

Código:
ListBox1.Items.Add(TextBox1.Text)
            TextBox1.Text = ""
            Button2.Enabled = True
            For i = 1 To ListBox1.Items.Count
                Label2.Text = "Elementos: " & i & ""
            Next

Código botón eliminar:

Código:
Dim a As Integer
        If ListBox1.Items.Count = 0 Then

        ElseIf ListBox1.SelectedIndex <> -1 Then
            ListBox1.Items.RemoveAt(ListBox1.SelectedIndex)
            For a = ListBox1.Items.Count To 1 Step -1
                Label2.Text = "Elementos: " & a & ""
            Next
        End If


Título: Re: Eliminar elementos ListBox
Publicado por: Lain0x en 7 Noviembre 2012, 21:38 pm
Solucionado con variable global, en el boton ingresar, antes del for pero después de ingresar el elemento al listbox se incrementa, y se decrementa justo después de presionar el botón eliminar.


Título: Re: Eliminar elementos ListBox
Publicado por: Keyen Night en 8 Noviembre 2012, 00:16 am
No hagas cuádruple post, edita el anterior.

Solo intentas mostrar la cantidad de Items?, Porque no solamente colocar
Código
  1. Label1.Text = "Elementos: " & ListBox1.Items.Count