这很可能是由自动回传造成的:
AutoPostBack="True" OnSelectedIndexChanged="isdeletedprogram_SelectedIndexChanged"
RepeatDirection="Horizontal" style="position: relative;">
当你点击一个单选按钮完全回发时到您的网页。换句话说:你的页面被重新加载,所有的进度都会丢失。您必须手动保存要保留的对象的当前状态。
所以你需要做的是创建一个方法,保存在Session,ViewState或Cache中的所有元素状态,以及在页面加载时从中加载所有元素。然后
//call this one in your isdeletedprogram_SelectedIndexChanged
protected void SavePageState()
{
Session["IsDeletedState"] = isdeletedprogram.SelectedIndex;
/*...*/
}
//call this on in the else clause - when a postback occurs
protected void LoadPageState()
{
isdeletedprogram_SelectedIndexChanged = Session["IsDeletedState"];
/*add any server side controls state you want to save here*/
}
你Page.Load会是这个样子
protected void Page_Load()
{
if(!Page.IsPostback)
{
//do anything you would normally do
}
else
{
//this will get executed on a Postback. Load data here
LoadPageState()
}
}
它是由你来决定你选择这里哪种永久存储器。 Session,Cache,ViewState ...