В моих веб-формах ASP.NET у меня есть MultiView, который, когда он находится на ActiveViewIndex 2, всегда возвращается к ActiveViewIndex 0, когда выполняется обратная передача. Когда я вставляю/обновляю строку в базе данных, мне нужно, чтобы она отображалась в текущем ActiveViewIndex после того, как она отправляется в базу данных. Как сохранить его в текущем ActiveViewIndex после отправки веб-формы? Возможно, это можно сделать с помощью ViewState, но я никогда не использовал его раньше, чтобы не знать, как это сделать.Сохранение ASP.NET Multiview в текущем ActiveViewIndex
0
A
ответ
0
Для хранения данных на странице вы можете использовать ViewState или иметь скрытое поле ввода, которое будет сохранять данные после каждого обратного возврата.
VIEWSTATE подобен словарю: когда вид 2 отображается магазин, чтобы ViewState (ViewState["activeTab"] = 2;
), а также на проверку загрузки страницы, если есть какая-то ценность в ViewState, и изменить активный индекс вида, если он:
protected void Page_Load(object sender, EventArgs e)
{
if (ViewState["activeIndex"] != null)
multiView.ActiveViewIndex = (int) ViewState["activeIndex"];
}
ViewState оставалось в 0 все время, даже после подачи формы. Так что он просто вернулся к индексу 0. – bds89
Это странно, состояние просмотра отключено? Вы можете попробовать использовать скрытое поле ввода, содержимое сохраняется между обратными передачами! –