修改radiobuttonlist的page_load方法

时间:2011-01-20 17:40:30

标签: c# asp.net radiobuttonlist

我有一个带单选按钮和textarea的页面,可根据您的选择动态填充数据。单选按钮用作文章标题列表,在选择时您可以看到文章的内容。

在我的pageload方法中,我希望允许用户在浏览器中看到指向他们的值的URL。这样他们就可以链接到另一个来源的文章。

目前,如果我手动输入以下示例网址,我的方法允许我链接到按钮选择:

http://localhost/test/Articles_test.aspx?selected=1
http://localhost/test/Articles_test.aspx?selected=2

我想修改它,以便在选择单选按钮时URL显示在浏览器中。另外,如果未指定值参数,则页面加载默认为“0”索引。

protected void Page_Load(object sender, EventArgs e)
{    
    if (!IsPostBack)
    {
        int selected;

        if (int.TryParse(Request.QueryString["selected"], out selected))
            RadioButtonList1.SelectedIndex = selected;
            RadioButtonList1.DataBind();         
    }
}



protected void RadioButtonList1_SelectedIndexChanged(object sender, EventArgs e)
{

        string strRedirect;
        strRedirect = "frm_Articles.aspx?selected=" + RadioButtonList1.SelectedIndex;
        Response.Redirect(strRedirect);

}

1 个答案:

答案 0 :(得分:1)

将您的radiobutton列表设置为在更改后重新发布。然后,在处理程序中,重定向到相应的URL:

protected void Page_Load(object sender, EventArgs e)
{    
    int selected;

    if (int.TryParse(Request.QueryString["selected"], out selected))
        RadioButtonList1.SelectedIndex = selected;
        RadioButtonList1.DataBind();         
}
protected void RadioButtonList1_SelectedIndexChanged(object sender, EventArgs e)
{

    string strRedirect;
    strRedirect = "frm_Articles.aspx?selected=" + RadioButtonList1.SelectedIndex;
    Response.Redirect(strRedirect);
}