| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Разработка под ASP.NET > Обратная отправка в updatepanel, masterpage |
| Автор: videns 12.3.2010, 14:38 |
| Есть следующая ситуация. Masterpage, внутри одной из областей есть updatepanel. В этой updatepanel динамически строится таблица из БД. И также есть dropdownlist для фильтрации выборки БД, фильтрация срабатывает при нажатии на button. Причем этот dropdownlist выводится тоже динамически, добавляется в элементы table. В методе, который и выполняет построение таблицы, я нахожу этот ddl таким образом: ContentPlaceHolder cph1 = (ContentPlaceHolder)Master.FindControl("MainContentplh"); DropDownList ddlSelectedFilter = (DropDownList)cph1.FindControl("ddlFilter"); Но из-за того, что он строится в самом коде, переменная ddlSelectedFilter оказывается пустой. Пытался выйти таким образом, при создании кнопки задаю метод: filterButton.Command += new CommandEventHandler(FilterTable); А в методе FilterTable вызываю метод, который и делает генерацию таблицы. То есть таблица генерируется 2 раза. В таком случае код правильно работает через раз. Первый раз срабатывает, второй - нет (причем не запускается сам метод FilterTable). Пытался в коде определить, какой элемент вызывает postback, но Request.Form["__EVENTTARGET"] выдает: ctl00$MainContentplh$ctl03 Видимо из-за использования masterpage. Подскажите, как можно выйти из этой ситуации? |