Многоразовый ModalPopupExtender - PullRequest
       9

Многоразовый ModalPopupExtender

3 голосов
/ 23 декабря 2010

Я пытаюсь создать ModalPopupExtender, который можно сохранить на главной странице или в пользовательском элементе управления, чтобы я мог передать ему панель и событие, и использовать эту панель в качестве панели, которую нужно «вытолкнуть», и событие как событие, вызываемое при нажатии кнопки ok.

Я пытался в течение некоторого времени, используя несколько различных методов, но ни один из них не работал правильно, и все, похоже, не совсем правильный способ сделать это. К ним относятся:

  • Добавление панели в качестве дочернего элемента управления другой панели, которая является Popuptarget экстендера. Это открывает правую панель, но поскольку элементы управления на панели были перемещены с дочерней страницы, они не могут быть доступны в событии.
  • Изменив Popuptarget экстендера на панель, которую я хочу открыть, затем добавил динамически созданную кнопку с правильным событием в качестве кнопки ok. Это снова открывает правую панель и вызывает правильное событие, но событие не может снова получить доступ к элементам управления на панели.

Так что, если кто-то может предложить лучший способ сделать это или какие-либо статьи, где это было сделано ранее, это будет оценено. Причина, по которой я это делаю, состоит в том, что на некоторых из наших страниц более 20 различных элементов, которые, возможно, потребуется показать пользователю с помощью modalpopupextender, добавление расширителя для каждого из них будет очень утомительным.

1 Ответ

1 голос
/ 27 декабря 2010

Это то, что я должен был сделать пару лет назад, я использовал метод на форуме ASP.Net:

http://forums.asp.net/p/1301694/2541024.aspx

Я поместил функцию JavaScript на главной странице, которая взяла идентификатор панели, который я хотел открыть, но все обрабатывалось самими панелями, без необходимости передавать события или что-то вокруг.

Самое большее, что у меня было, это два разных всплывающих окна, где-то рядом с твоими 20.

Изменив Popuptarget экстендера на панель, которую я хочу открыть, затем добавил динамически созданную кнопку с правильным событием в качестве кнопки ok. Это снова открывает правую панель и вызывает правильное событие, но событие не может снова получить доступ к элементам управления на панели.

Не могли бы вы объяснить это немного больше, пожалуйста? Почему бы не иметь 1 кнопку на панели, которую вы всплываете? У вас есть 20 различных панелей, и только 1 из них активна в зависимости от запроса пользователя? Или вам нужно переключаться между разными панелями?

Не могли бы вы привести пример кода, чтобы показать, чего вы пытаетесь достичь.

...