在C#中确定构造函数中的选定单选按钮

时间:2011-06-20 12:45:57

标签: c# asp.net radio-button radiobuttonlist

您好,

我有这个构造函数:

public EmployeeCategorizationControl()
        {


        }

和许多单选按钮:

<asp:RadioButtonList ID="selectedYesNoQuestionBlock1" runat="server" RepeatDirection="Horizontal"
                OnSelectedIndexChanged="Question1GotAnswered" AutoPostBack="true">
                <asp:ListItem Text="Yes" Value="1"></asp:ListItem>
                <asp:ListItem Text="No" Value="0"></asp:ListItem>
            </asp:RadioButtonList>

<asp:RadioButtonList ID="selectedYesNoQuestionBlock2" runat="server" RepeatDirection="Horizontal"
                AutoPostBack="true" OnSelectedIndexChanged="Question2GotAnswered">
                <asp:ListItem Text="Yes" Value="1"></asp:ListItem>
                <asp:ListItem Text="No" Value="0"></asp:ListItem>
            </asp:RadioButtonList>

在我的构造函数中,如何确定选择了哪个单选按钮?

提前致谢!

2 个答案:

答案 0 :(得分:2)

使用asp.net,由于page life cycle的工作方式,与构造函数中的控件交互并不是一个好主意。您可能希望浏览页面生命周期msdn页面,而是考虑LoadInit事件。

答案 1 :(得分:0)

您不能:Request之后构建页面实例时才可用。您必须稍后在the page lifecycle中执行此操作。

Load之前(例如在初始化期间),您只能通过请求访问选择:

protected sub Page_Init(object sender, EventArgs args) {
    var selection = Request.Form["selectedYesNoQuestionBlock1"];
}

Load将请求值映射到控件对象 - 从那时起,您可以直接通过控件访问值:

protected sub Page_Load(object sender, EventArgs args) {
    var selection = selectedYesNoQuestionBlock1.SelectedValue;
}