2

我希望你能帮忙。这让我困惑了好几个小时。

我的 CustomerGroupConfirm.aspx 页面中有一个 RadioButton 列表:

<div>
    <table>
        <tbody>
            <tr>
                <td nowrap="nowrap">
                    <asp:RadioButtonList ID="rblContractGroups" runat="server"></asp:RadioButtonList>
                </td>
            </tr>
            <tr>
                <td nowrap="nowrap">
                <br />
                    <asp:Button ID="btnConfirmCustomerContractGroups" runat="server" OnClick="confirmCustomerContractGroups_Click" CssClass="Button" Text="Confirm Default Customer Contract Group" />
                </td>
            </tr>
        </tbody>
    </table>
</div>

我选择了一个 RadioButton,当我单击“确认默认客户合同组”按钮时,这是代码隐藏中的函数:

protected void confirmCustomerContractGroups_Click(object sender, EventArgs e)
{
    // Iterate through the Radio Button list.
    foreach (ListItem li in rblContractGroups.Items)
    {
        if (li.Selected)
        // If the Radio Button List Item (Customer Contract Group) is Selected.
        {
            // Set the Default Customer Contract Group of the Current User.
            CustomerAccess.SetDefaultCustomerContractGroup(Int32.Parse(Session["CustomerID"].ToString()), Int32.Parse(li.Value));
        }
    }
    Response.Redirect("~/Default.aspx");
}

问题是列表项 (li.Selected) 总是错误的。

我究竟做错了什么?任何人都可以帮忙吗?

亲切的问候

沃尔特

4

1 回答 1

1

也许你在每个回发中绑定你的 rblContractGroups 单选按钮列表。您应该将其放入 IsPostBack 控件:

if (!Page.IsPostBack)
{
    // Bind your rblContractGroups
}
于 2009-06-27T20:28:25.130 回答