Jag har en RadioButtonListoch en GridView på min sida.
Via RadioButtonList1 så väljer jag vilka sql som skall köras. GridView är kopplad till paging. Problemet är att RadioButtonList1 alltid går tillbaka till index 0 vid postback.
protected void RadioButtonList1_SelectedIndexChanged(object sender, EventArgs e)
{
int i = Convert.ToInt32(RadioButtonList1.SelectedIndex.ToString());
ViewState["id"] = i.ToString();
loadGrid(i);
}
// i page load
if (!IsPostBack)
{
loadGrid(0);
}
//i loadGrid
private void loadGrid(int i)
{
if (ViewState["id"] == null)
Label2.Text = i.ToString();
else
{
Label2.Text = "ViewState: " + ViewState["id"].ToString();
i = Convert.ToInt32(ViewState["id"].ToString());
}
RadioButtonList1.SelectedIndex = i;
switch (i)
{
case 0:
sql = ";";
break;
case 1:
sql = ";";
break;
case 2:
sql = ";";
break;
case 3:
sql = ";";
break;
case 4:
sql = "";
break;
}//jag har raderat sql:erna de fungerar bra och de behövs inte visas
PagedDataSource objPDS = new PagedDataSource();
objPDS.DataSource = Webbutill.fillDs(DBConn, sql, "Titlar").Tables["Titlar"]
.DefaultView;
objPDS.AllowPaging = true;
objPDS.PageSize = 23;
objPDS.CurrentPageIndex = myCurrentPageIndex;
lbAntalSidor.Text = Webbutill.getAntalSidor(objPDS);
GridView1.DataSource = objPDS;
GridView1.DataBind();
Allt fungerar ganska så bra, men så fort som jag skall bläddra vidare, så ställer sig RadioButtonList1 på index 0.
Hu kan jag göra för att spara värdet? ViewState["id"].ToString() hjälper inte. :stud