problemas con dropdownlist y dataset

27/08/2006 - 03:44 por Ramses | Informe spam
tengo una dos sub una llenarcombo() y el otro mostrar_rol(), el segundo se
muestra de acuerdo al objeto seleccionado en el dropdownlist1 y el segundo
dropwdownlist activa sub mostrardata() en una grilla, ambos tienen el
postback en true y cuando selecciono el campo en el combo1 o 2 regresa al
indice 0 y no me mantiene el valor que seleccione, como puedo solucionarlo?

Gracias de antemano
private sub llenarcombo()
Try
Dim ds As New DataSet
Dim strQry As String

strQry = "select peri_cod from rea_periodos where peri_estado = 'A'"

ds = con.ConsultaBD(strQry)

With DropDownList1
.DataSource = Dataset1.Tables(0).DefaultView
.DataValueField = "peri_cod"
.DataTextField = "peri_cod"
.DataBind()
End With
Catch ex As Exception
Label1.Text = ex.Message
'msg1.showmessage(ex.Message)
End Try
end sub

Private Sub DropDownList1_SelectedIndexChanged(ByVal sender As
System.Object, ByVal e As System.EventArgs) Handles
cmb_persona.SelectedIndexChanged

mostrar_rol()

End Sub
 

Leer las respuestas

#1 cousi
27/08/2006 - 16:32 | Informe spam
Hola Ramses

En el metodo mostrar_rol() que no lo veo ahora, deberias buscar en la tabla
correspondiente por el valor de la propiedad Datavaluefield seleccionado.
Yo lo haria de la siguiente manera


Private Sub LlenarComboCategorias()

Try

Dim cn As New SqlConnection("Integrated security=sspi; data source=.;
Initial Catalog = Northwind")

Dim da As New SqlDataAdapter("Select CategoryId, CategoryName From
Categories", cn)

Dim ds As New DataSet

da.Fill(ds, "Productos")

With DropCategorias

.DataSource = ds.Tables(0)

.DataValueField = "CategoryId"

.DataTextField = "CategoryName"

.DataBind()

End With

Catch ex As Exception

Label1.Text = ex.Message

End Try

End Sub

Protected Sub DropCategorias_SelectedIndexChanged(ByVal sender As Object,
ByVal e As System.EventArgs) Handles DropCategorias.SelectedIndexChanged

LlenarCombosProductos()

End Sub

Private Sub LlenarCombosProductos()

Try

Dim cn As New SqlConnection("Integrated security=sspi; data source=.;
Initial Catalog = Northwind")

Dim da As New SqlDataAdapter("Select ProductId, ProductName From Products
Where IdCategory = " & DropCategorias.SelectedValue, cn)

Dim ds As New DataSet

da.Fill(ds, "Productos")

With DropProductos

.DataSource = ds.Tables(0)

.DataValueField = "ProductId"

.DataTextField = "ProductName"

.DataBind()

End With

Catch ex As Exception

Label1.Text = ex.Message

End Try

End Sub


Esto es un ejemplo que espero que te sirva. Un saludo

Jose

"Ramses" escribió en el mensaje
news:%
tengo una dos sub una llenarcombo() y el otro mostrar_rol(), el segundo
se muestra de acuerdo al objeto seleccionado en el dropdownlist1 y el
segundo dropwdownlist activa sub mostrardata() en una grilla, ambos tienen
el postback en true y cuando selecciono el campo en el combo1 o 2 regresa
al indice 0 y no me mantiene el valor que seleccione, como puedo
solucionarlo?

Gracias de antemano
private sub llenarcombo()
Try
Dim ds As New DataSet
Dim strQry As String

strQry = "select peri_cod from rea_periodos where peri_estado =
'A'"

ds = con.ConsultaBD(strQry)

With DropDownList1
.DataSource = Dataset1.Tables(0).DefaultView
.DataValueField = "peri_cod"
.DataTextField = "peri_cod"
.DataBind()
End With
Catch ex As Exception
Label1.Text = ex.Message
'msg1.showmessage(ex.Message)
End Try
end sub

Private Sub DropDownList1_SelectedIndexChanged(ByVal sender As
System.Object, ByVal e As System.EventArgs) Handles
cmb_persona.SelectedIndexChanged

mostrar_rol()

End Sub


Preguntas similares