ASP.NET webforms列表框 - 跨页面发布

时间:2011-01-22 15:32:10

标签: asp.net webforms listbox cross-page-posting

我是ASP.NET的新手,在发布到另一个页面时,我遇到了使列表框返回正确数据的问题。我已经获得了下拉列表和单选按钮。例如,对于下拉列表,我只是这样做:

Public ReadOnly Property SiteID() As String
    Get
        Return ddlSites.SelectedValue
    End Get

然后,在下一页上,我使用PreviousPage.SiteID成功返回了该值。但是,当我尝试使用列表框时:

Public ReadOnly Property CustID() As String
    Get
        Return lstLoggedInCustomers.SelectedValue.ToString
    End Get
End Property

然后使用PreviousPage调用它,我得到一个空字符串,因为SelectedIndex总是返回-1,即使我在列表框中选择了一个项目。

3 个答案:

答案 0 :(得分:1)

在回发时从ViewState读取SelectedValue。但是ViewState在下一页不再可用。为什么不在Session中保存SelectedValue,以便在下一页上引用它?

答案 1 :(得分:1)

我有类似的情况。我使用了user252340的方法并存储了值:

Session["MemberName"] = memberName;

然后在另一页的PageLoad中获取值:

 MemberName.Value = Session["MemberName"].ToString();

希望这有帮助

答案 2 :(得分:0)

在这种情况下,您可以在重定向到另一个页面之前将值保留在viewstate中。所以从下一页打电话就像:

Public ReadOnly Property CustID() As String
    Get
        Return viewstate("myCustID") 
    End Get
End Property

我希望它能奏效。