Молчун
Зарегистрирован: 24 June 2003
Сообщения: 29
Примеры кода: 0
|
RE[7]: как правильно достать данные из формы |
28 June 2003 15:19 |
|
|
|
|
работает, спасибо большое. но не могу понять, выходит, если я каждый раз выполняю databind в подпрограмме на page_load, то значения полей формы, перед тем, как попасть в обработчик, заменяются на старые?
Ессно заменяются - ты ж заново вытаскиваешь данные из базы.
и еще. Если мне нужно передать данные из datalist таким образом, чтобы пользователь об этом не знал (например, когда мы передаем id пользователя при работе с БД), то каким образом это передают нормальные люди? Опции, обеспечивающей hidden textbox вроде не существует...
У DataList (и DataGrid) есть свойство DataKeyField - самое то для хранения ID строк
Можно еще так делать (когда например нет возможности DataKeys использовать):
в ItemTemplate ложишь Label с Visible = False и ей биндишь нужное значение, например DataBinder.Eval(Container, "DataItem.product_id").
Потом можешь его вытаскивать, например в ItemCommand:
int product_id = Int32.Parse(((Label)e.Item.FindControl("Label1")).Text);
сейчас я вышел из ситуации применяя textbox visible=false, что в общем-то, сути по отношению к label visible=false не меняет. Только в одном случае создается span блок, он иногда создает отступ в html, а input type=hidden не мешает.
|
|