У меня есть UserControl, который содержит, помимо прочего, этот модальный расширитель всплывающих окон AJAX:
<ajax:ModalPopupExtender ID="MPE" runat="server"
TargetControlID="btnChangePassword" PopupControlID="pnlPasswordChanging"
BackgroundCssClass="modalBackground" DropShadow="true"
CancelControlID="btnCancel" OnCancelScript="ULC_ChangePw_CancelBtnClick();" />
Ничего особенного здесь. Проблема связана с этим атрибутом BackgroundCssClass
- для этого требуется класс CSS с именем modalBackground . К сожалению, я не могу добавить класс CSS из пользовательского элемента управления таким образом, чтобы он выдерживал постбэки.
Если я добавлю свой modalBackground класс на страницу .ascx :
<style type="text/css">
.modalBackground
{
background-color: #A1A1A1;
filter: alpha(opacity=70);
opacity: 0.7px;
}
</style>
... свойство будет отображаться при первой загрузке, но не после последующих обратных передач. Конечно, я мог бы определить modalBackground на самой странице или в отдельном отдельном файле CSS, который вызывается пользовательским элементом управления, но ни одно из решений не подойдет для меня.
Нет ли способа создать класс CSS программно и добавить его на страницу? В основном я ищу CSS, эквивалентный Javascript RegisterClientScriptBlock
функции:
Dim controlNameScript = String.Format("<script type='text/javascript'> var AppMenuName = '{0}' </script>", Me.ClientID)
Me.Page.ClientScript.RegisterClientScriptBlock(myType, "ControlName", controlNameScript)
Спасибо!