АСП.НЕТ 4.0. Я хочу разрешить пользователям просматривать/редактировать элементы по лицензии клиента. Лицензия включает продукты 1-M, и список продуктов со временем будет расширяться, поэтому я динамически создаю список всех продуктов (в Page_Load) с флажком, чтобы указать, есть ли в лицензии этот продукт, например:
CheckBox cbxProduct = new CheckBox();
cbxProduct.ID = "cbxProduct" + product.ID.ToString();
Я могу найти эти динамические элементы управления и получить доступ к их значениям в PostBack, используя:
CheckBox cbxProd = (CheckBox)pnlLicenseDetails.FindControl("cbxProduct" + productID.ToString());
но только если они были только что воссозданы в Page_Load (или Page_Init, похоже, не имеет значения). Проблема в том, что я хочу, чтобы пользователь мог снять флажок, чтобы удалить продукт из лицензии, а затем сохранить результаты. Но для того, чтобы найти флажок и определить его значение, мне приходится заново создавать элементы управления, что, конечно же, стирает любое введенное пользователем значение.
Если я попытаюсь сослаться на флажки без их повторного создания, я, конечно, получу ошибку "ссылка на объект не установлена...". Поэтому мне нужен какой-то способ зафиксировать значения, которые вводит пользователь, до того, как они будут уничтожены.
Предложения?