ASP.Net Ajax ComboBox в ModalPopup

У меня есть поле со списком внутри ModalPopupExtender и когда всплывающее окно показывает список элементов не находится в текстовом поле, но смещено вправо. мой код:

<asp:ScriptManager ID="ScriptManager1" runat="server" EnableScriptGlobalization="true">
        <Services>
        </Services>
        <Scripts>
            <asp:ScriptReference Path="~/JavaScript/ScriptManager.js" />
        </Scripts>
</asp:ScriptManager>

<div>
    <asp:Panel ID="dialog" runat="server"> 
        <div id="dialogContents"> 
            <asp:ComboBox ID="DropDownListMailTos" runat="server" AutoPostBack="true" 
                DropDownStyle="DropDown" Width="90%" RenderMode="Block"> 
                <asp:ListItem Text="1" Value="1" /> 
                <asp:ListItem Text="2" Value="2" /> 
                <asp:ListItem Text="3" Value="3" /> 
            </asp:ComboBox> 
            <br /> 
            <asp:Button ID="btnOK" Text="OK" runat="server" /> 
        </div> 
    </asp:Panel> 

    <asp:Button ID="btnShow" Text="Open Dialog" runat="server" /> 

    <asp:ModalPopupExtender 
        TargetControlID="btnShow" 
        PopupControlID="dialog" 
        OkControlID="btnOK" 
        DropShadow="true" 
        BackgroundCssClass="modalBackground" 
        runat="server" /> 
</div>

я попробовал несколько найденных решений здесь и здесь

но там не повезло. Что я могу поделать?

1 ответов


похоже, единственная проблема здесь в том, что ModalPopup сталкивается с стилем по умолчанию ComboBox. Вам просто нужно поиграть с классом CSS, который применяется к ListItems в ComboBox чтобы получить их право. Добавьте следующий код в свой CSS для этой страницы (протестирован в IE9, Chrome и FireFox), и вы должны быть хорошими:

.ajax__combobox_itemlist
{
    position:fixed !important;
}

для получения дополнительной информации см. раздел "поле со списком темы" в самом низу документация страница.