Hola
UNDR4!, eso se debe a que no estas validando bien... mira esta linea que creo que es en la que se cae :
Código vb:
Ver originalElseIf TBPClave.Text.Trim.Length <> 0 And TBPNombre.Text.Trim.Length = 0 Then
Query = "Select clave,nombre,descripcion,precioc,preciou from productos where clave like '" & TBPClave.Text & "' and id_marca='" & CBMarca.SelectedValue.ToString & "' order by nombre"
Como ves tu campo clave puede tener contenido y el nombre puede estar vacío... hasta allí bien, pero que pasa si además tu combobox está como indice -1?? pasa a la siguiente linea tú obligadamente jalas su valor cuando en realidad no nay nada ningun valor instanciado. por eso es que te sale
eferencia a objeto no establecida como instancia de un objeto. Para ello lo que tendrás que hacer es tbm decir en tu condicional que tu combobox sea distinto a -1 :
Código vb:
Ver originalElseIf TBPClave.Text.Trim.Length <> 0 And TBPNombre.Text.Trim.Length = 0 And CBMarca.SelectedIndex <> -1 Then
Saludos!
.