Изменить метод page_load для списка радиобутонтов - PullRequest
0 голосов
/ 20 января 2011

У меня есть страница с переключателями и текстовой областью, которая динамически заполняет данные на основе вашего выбора. Переключатели действуют как список названий статей, и при выборе вы видите содержание статьи.

В моем методе загрузки страницы я хочу, чтобы пользователи могли видеть в своем браузере URL, который указывает на значение, которое они имеют. Таким образом, они могут ссылаться на статью в другом источнике.

В настоящее время метод, который я имею, позволяет мне ссылаться на выбор кнопки, если я вручную набираю 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 Ответ

1 голос
/ 20 января 2011

Настройте свой список радиокнопок, чтобы публиковать сообщения об изменениях.Затем в обработчике выполните перенаправление на соответствующий 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);
}
...