下拉列表SelectedItems Postback不存在

时间:2013-05-05 16:25:28

标签: c# asp.net

我不知道该怎么做,我可能不得不使用视图状态,但我需要帮助。

我有一个下拉列表,我不是数据绑定。我会知道我是不是应该做Page.IsPostBack而不是数据绑定。

<asp:DropDownList ID="ddlWeeklyWeightIn" runat="server">
    <asp:ListItem>1</asp:ListItem>
    <asp:ListItem>2</asp:ListItem>
    <asp:ListItem>3</asp:ListItem>
    <asp:ListItem>4</asp:ListItem>
</asp:DropDownList>

现在我的代码背后有这个:

 protected void Button1_Click(object sender, EventArgs e)
    {
        string wwin = "";
        wwin = ddlWeeklyWeightIn.SelectedItem.Text;
    }

在按钮上单击始终为“1”,而不是所选项目。

谢谢

4 个答案:

答案 0 :(得分:0)

尝试将EnableViewState =“True”添加到您的下拉控件中。

答案 1 :(得分:0)

回发后会导致重置所选值。使用if(!IsPostBack)或使用更新面板来阻止回发。

答案 2 :(得分:0)

这只是为了确保您可以尝试使用:

<asp:DropDownList ID="ddlWeeklyWeightIn" runat="server">
    <asp:ListItem Text="1"></asp:ListItem>
    <asp:ListItem Text="2"></asp:ListItem>
    <asp:ListItem Text="3"></asp:ListItem>
    <asp:ListItem Text="4"></asp:ListItem>
</asp:DropDownList>

您是否可以检查在页面初始化期间是否只设置了所选项目?

答案 3 :(得分:0)

Aspx方面: 将autopostback = true添加到dropdown属性,并使用listitem如下: ListItem Text =“4”Value =“4”&gt;等等

代码背后: string wwin =“”; wwin = ddlWeeklyWeightIn.SelectedValue;