Visual Basic.NET - Select de un ListView

   
Vista:

Select de un ListView

Publicado por Adolfo (34 intervenciones) el 13/04/2011 01:42:34
Hola,

Tengo el siguiente codigo que selectiona la lista de subcategorias correspondientes a una categorias seleccionada de un ListView "LVCategorias"
Cuando corro el programa en diseño funciona bien, pero cuando lo corro desde el .EXE me da el siguiente error:

Invalid Argument=Value of '0' is not valid for 'inded'
Parameter name: index.

No entiendo porque en modo de diseño si funciona in cuando corro el .EXE me da este error, si alguien me puede sugerir una solucion me ayudaria de mucho.

Gracias.




Private Sub LVCategorias_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles LVCategorias.SelectedIndexChanged
'*********************************************************************************************
' Carga la lista de SubCategorias de acuerdo a la categoria seleccionada.
'*********************************************************************************************

Dim VarCodigoCat As Integer
VarCodigoCat = LVCategorias.SelectedItems(0).Text

DASubCategorias = New OleDbDataAdapter("Select CodigoSubCategoria, SubCategoria From TBSubCategorias WHERE Val(CodigoCategoria) = '" & VarCodigoCat & "' ORDER by SubCategoria", m_cn)
'Selecciona de la tabla todos los productos cuya categoria de producto es igual a la seleccionada.

DTSubCategorias.Clear()
m_CB = New OleDbCommandBuilder(DASubCategorias)
DASubCategorias.Fill(DTSubCategorias)

If DTSubCategorias.Rows.Count = 0 Then
MessageBox.Show("No hay subcategorías que correspondan a esta categoría.", "Inforamacion.", MessageBoxButtons.OK, MessageBoxIcon.Information)
Exit Sub
End If

With DBGSubCategorias
.DataSource = DTSubCategorias
.ColumnHeadersDefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
.Columns(0).Width = 50
.Columns(0).HeaderText = "Código"
.Columns(1).Width = 130
.Columns(1).HeaderText = "SubCategoría"
End With

End Sub
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Select de un ListView

Publicado por Joan B Fabregas (129 intervenciones) el 13/04/2011 14:04:16
Hola,

Lo que podría ser es que ahún no haya ningún elemento del list view seleccionado y de aqui el error.

En esta caso para resolver el problema tendrias que sustituir

Dim VarCodigoCat As Integer
VarCodigoCat = LVCategorias.SelectedItems(0).Text

Por

Dim VarCodigoCat As Integer
If LVCategorias.SelectedItems.Count > 0 Then
VarCodigoCat = LVCategorias.SelectedItems(0).Text
Else
'no hay nada seleccionado
Exit Sub
End If

Saludos,
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar