下拉不在usercontrol上触发事件

时间:2014-08-19 09:23:51

标签: asp.net vb.net drop-down-menu

我有一个dropdown列表,它位于我页面上的用户控件中。 当我在gridview中选择一个项目时,它会填充一些数据,包括此下拉列表,选择gridview row的对应值。

然后我可以更改选择,但是当我尝试这样做时,选择的索引更改事件不会被触发。至少不是一开始。如果我再次选择则会触发。

我正在使用带有VB的asp.net。 我放了AutoPostback = true,我在代码隐藏方法中设置了Handles,我设置了一个默认的空行并将其设置为默认选择,但我无法使其工作

  Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load
    If Page.IsPostBack() Then
        fillProd()
        Dim cert As String = Session("var")
        isFilled = Session("isFilled")

        If Not IsNothing(cert) And Not isFilled Then
            FillFields(cert)
        End If
    End If

End Sub

Private Sub fillProd()
    dt = HttpContext.Current.Session("dt")
    Dim row() As DataRow = dt.Select()
    Dim dtProductos As New DataTable()
    dtProductos.Columns.Add(New DataColumn("valorcombo", GetType(String)))
    dtProductos.Columns.Add(New DataColumn("textocombo", GetType(String)))
    Dim firstrow As DataRow = dtProductos.NewRow()
    firstrow (0) = 0
    firstrow (1) = ""
    dtProductos.Rows.Add(firstrow)
    For i As Integer = 0 To row.Length - 1

        Dim fila As DataRow = dtProductos.NewRow()
        fila(0) = row(i)("cod")
        fila(1) = row(i)("text")
        dtProductos.Rows.Add(fila)
    Next

    ddlproductos.DataSource = dtProductos
    ddlproductos.DataTextField = "textocombo"
    ddlproductos.DataValueField = "valorcombo"
    ddlproductos.DataBind()
    ddlproductos.SelectedIndex = 0
End Sub
Private Sub FillFields(cert As String)
    Dim dtSubsData As DataTable = GetData(cert)

    If Not IsNothing(dtSubsData) Then
        Dim row As DataRow = dtSubsData.Rows(0)
        ddlproductos.ClearSelection()
        ddlproductos.SelectedValue = row("cod").ToString()
        Session("isFilled") = True
        isFilled = Session("isFilled")
    End If

End Sub

有人可以帮忙吗?

0 个答案:

没有答案