我有一个单选按钮列表,根据单选按钮列表的选择,下拉列表将填充。重要的是这里radiobutton列表设置为autopostback = true。
当我通过按钮点击移动到下一页时,当我回来时。下拉按钮无法维持状态。它正在失去价值。对我来说,保持状态直到我到达最后一页是很重要的。我该如何处理这个问题。我使用过会议但没有成功。你能告诉我如何实施会议。
答案 0 :(得分:0)
如果要使用会话,可以使用列表的所有值检查会话变量
if(Session["selectedList"] != Null){
var check = Session["selectedList"].ToString();
foreach(ListItem item in yourList.Items){
if(item.Value.Equals(check))
// set it as selected
}
}
存储时,单击按钮
Session["selectedList"] = yourList.SelectedValue;
您也可以使用索引而不是值。您还可以为每个下拉列表/ radiobuttonlist创建一个会话变量,然后为每个下拉列表创建一个循环。
更新
感谢Shekhar指出这一点。您需要浏览要存储的所有列表,并使用这些循环保存它们,而不仅仅是下拉列表。然后,您需要恢复单选按钮值,重新绑定下拉列表,然后为每个值设置所选项目。
答案 1 :(得分:0)
嗨@ Newyork167这不会像上面提到的那样“基于选择单选按钮列表,下拉将会填充”。因此,您必须存储“RadioButtonList
”所选值,并相应地填充DropDownlist
值并在返回页面后设置为选定值。
答案 2 :(得分:0)
确定。根据我的理解,你需要保存一个页面状态,这样当你回来时,你会得到你离开前一个状态的页面。所以要做到这一点,你有两种方法。 1.在跳转到下一页之前,将所有内容存储在会话中,如“Radiobutton selected value”,下拉选择值和其他设置(如果有)。 2.将这些值“Radiobutton selected value”,“dropdown selected value”和其他(如果有)作为查询字符串传递,当您返回时,请读取相同的查询字符串。 无论哪种方式,当你回来时,你将拥有以前的数据。在page_load事件中,只需检查您是否拥有该数据。如果是,则使用以前的数据填充控件,否则填充控件以进行首次加载。 这里有一些链接供您参考。 http://www.codeproject.com/Articles/5876/Passing-variables-between-pages-using-QueryString Passing Session[] and Request[] to Methods in C#