Dropdownlist Autopost back问题:记住选择

时间:2011-07-25 14:40:58

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

我想更改下拉列表,每当我进行一些更改时,它都会自动回发并触发下拉列表中的selectedindexchanged事件。我有问题,它自动发回,但不记得我选择,它刷新我的页面和我选择的项目丢失。我想在没有AJAX调用的情况下这样做。但是,如果AJAX是唯一的选择,我愿意接受它。

<asp:DropDownList ID="ddlProjectEditor" CssClass="ddlProjectEditor" Autopostback="true"  runat="server" >
    </asp:DropDownList>

Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
  If Not Page.IsPostBack Then
        Dim F As facility = utilities.lookForFacility
        'Option to add Project information in editor

        _config = CType(System.Configuration.ConfigurationManager.GetSection("editorConfigGroup/general"), f896EditorConfig.Config.General)


        If F IsNot Nothing Then
            Dim _facilityID As String = F.FacilityID
            Dim count As Integer = 0
            Dim facility As facility = FacilityManager.getFacility(_facilityID, True)
            Me.ddlProjectEditor.Items.Insert(count, New ListItem(F.CompanyName, F.FacilityID))

            'Me.ddlProjectEditor.SelectedIndex = 0
            'Me.ddlProjectEditor.ClearSelection()


            For Each memberFID As String In (From Rel In facility.Relationships Where Rel.numberType = "hllTeam" Or Rel.numberType = "hllOffice" Select Rel.storeNumber)
                count = count + 1
                Dim CompanyName = FacilityManager.getFacility(memberFID, True).CompanyName
                Me.ddlProjectEditor.Items.Insert(count, New ListItem(CompanyName, memberFID))
            Next
        End If
    End If


End Sub

Protected Sub ddlProjectEditor_SelectedIndexChanged2(ByVal sender As Object, ByVal e As EventArgs) Handles ddlProjectEditor.SelectedIndexChanged
        Dim selectedFacilityID = ddlProjectEditor.SelectedItem.Value 
'This event doesn't get triggered.

    End Sub

2 个答案:

答案 0 :(得分:2)

您必须检查page directive文件中的web.config,然后查看是否EnableViewState="false"。如果是这种情况,请将其更改为EnableViewState="true"

答案 1 :(得分:0)

将ddlProjectEditor_SelectedIndexChanged2更改为Public并将OnSelectedIndexChanged =“ddlProjectEditor_SelectedIndexChanged2”添加到下拉列表标记中。