ASP.NET модальное всплывающее окно, полностью из кода?
то, что я пытаюсь сделать, это создать немного многоразового кода, который может написать модальное всплывающее окно, либо через javascript, либо с помощью ajaxcontrol toolkit все из кода позади.
модальный будет своего рода логин всплывающее окно для управления доступом к более ограниченным областям веб-сайта, позволяя определенным пользователям повторно учетные данные для более высокого доступа.
Я думал сделать пользовательский элемент управления, но я вижу некоторые проблемы с передачей всей соответствующей информации без она абсолютно каждом раунде.
Если у кого-нибудь есть хорошие ссылки или советы для этого, было бы очень признательно!
спасибо!
EDIT: я знаю, как использовать инструментарий управления ajax и его элементы управления, и я знаю, как сделать экраны входа в систему, я спрашиваю, как это сделать полностью из кода позади из класса, который будет независим от его реализации
5 ответов
написать управление сервером или asp.net расширитель как это делает ajax control toolkit.
лучшее, что вы можете сделать, это скачать источник AjaxControlToolkit из CodePlex и исследуйте источник ModalPopup внутри этого.
еще одна вещь, которую вы можете сделать, это просто вызвать popupExtender, чтобы показать из кода за файлом. Как мы знаем, расширитель должен быть как-то связаны с целевым контролем, просто добавить фиктивный контроль как скрытое текстовое поле (на самом деле, чтобы скрыть элемент управления, сделать его из ASP-файл, как стиль="дисплей:нет" не от контроля свойства (видна=ложь) в противном случае он не будет работать), а потом просто вызвать из кода позади, как расширитель это:
DummyTextBox_ModalPopupExtender.Show();
вы можете назвать его в page_load или с любым другим триггером.
не нужен javascript ни на стороне клиента, ни на стороне сервера. Xdс.
modalpopupextender в AJAX Control toolkit прост в использовании, плюс у него есть серверный или клиентский метод для отображения всплывающего окна (в прошлых версиях у меня были проблемы с серверным методом, но он, возможно, был разрешен в текущей версии).
вы можете поместить modalpopupextender внутри главной страницы и создать метод JS на главной странице, которую вы можете вызвать для вызова модального расширителя всплывающих окон, например:
функция showPopup() { ВАР модал = $find ("% "); модальный.показывать(); }
содержимое всплывающего окна можно заменить с помощью javascript, так как вы контролируете это содержимое.
добавить BehaviorID="my_cool_id"
к вашему расширителю modalpopup и добавьте это к любой функции сервера
ScriptManager.RegisterStartupScript(Page, this.GetType(),"id","function pageLoad(){$find('my_cool_id').show();}",true);