Как программно создать и использовать список флажков из ASP.NET?
У меня есть страница с таблицей вещей, и мне нужно разрешить пользователю выбирать строки для обработки. Я выяснил, как добавить столбец флажков в таблицу, но, похоже, не могу понять, как проверить, проверены ли они при отправке формы. Если бы они были статическими элементами, я мог бы просто проверитьthis.theCheckBox
но они генерируются программно.
Также я не очень доволен тем, как я прикрепляю свои данные к ним (вставляя их в свое свойство ID).
Я не уверен, является ли это уместным, но я смотрю на небольшую часть уловки-22, поскольку мне нужно знать, какие из флажков были созданыlast time around были проверены, прежде чем я могу повторно запустить код, который их создал.
Edit:
Я нашел почти решение. УстановивAutoPostBack
собственность иCheckedChanged
событие:
checkbox.AutoPostBack = false;
checkbox.CheckedChanged += new EventHandler(checkbox_CheckedChanged);
Я могу получить код, который будет вызываться в сообщении для любого флажка, который изменился. Однако это имеет две проблемы:
The call back is processed after (or during, I'm not sure)Page_Load
where I need to use this information
The call back is not called for check boxes that were checked when the page loaded and still are.
Edit 2:
В итоге я пометил все мои идентификаторы префиксом Know и вставил их в началоForm_Load
:
foreach (string v in this.Request.Form.AllKeys)
{
if (v.StartsWith(Prefix))
{
var data = v.Substring(Prefix.Length);
}
}
все остальное кажется слишком поздно.