Изображение меню ASP.NET с выпадающими текстовыми подпунктами - PullRequest
0 голосов
/ 14 февраля 2011

У меня есть пользовательский элемент управления меню с кнопками изображений, как эта:

<asp:TableCell ID="tcDownload" runat="server" CssClass="MyMenuTableCellDownload" VerticalAlign="Top" >
    <asp:ImageButton ID="ibtnDownload" runat="server" ImageUrl="~/Images/MyMenu/tb_download_1.gif"
        CssClass="MyMenuIbtn" ToolTip="Download Results" />
</asp:TableCell>

В коде ниже я управляю нажатием на них, чтобы перейти на другую страницу:

ibtnDownload.Attributes.Add("onclick", "document.location.href = '" + strNavUrl + "';return false");

В другом месте пользовательского элемента управления у меня есть обычные текстовые меню, подобные этому:

<asp:TableCell ID="tcMyMenuCust" runat="server">
    <asp:Menu ID="menuMyCust" runat="server" StaticDisplayLevels="1" MaximumDynamicDisplayLevels="1" Orientation="Horizontal"
            CssClass="MyMenuCustomer" StaticMenuItemStyle-ItemSpacing="0px" DynamicMenuItemStyle-CssClass="MyMenuDynamicItem"
             StaticMenuItemStyle-CssClass="MyMenuStaticItem" DynamicHoverStyle-CssClass="MyMenuDynamicItemHover" DynamicVerticalOffset="0"
            StaticHoverStyle-CssClass="MyMenuStaticItemHoverCust" StaticEnableDefaultPopOutImage="false"
             DynamicPopOutImageUrl="~/Images/MyMenu/menu_arrow_grey.gif" DynamicMenuItemStyle-VerticalPadding="2" 
             DisappearAfter="0" OnMenuItemClick="menuMy_MenuItemClick">
        <Items>
            <asp:MenuItem Text="Customers" ImageUrl="~/Images/MyMenu/MyMenuGradientTransparent.png" Selectable="false">
                <asp:MenuItem Text="Domestic&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;" 
                    Value="Customer_Domestic",
                    NavigateUrl="~/MyMain.aspx?_page=DomCusts&_title=DomesticCustomers">
                </asp:MenuItem>
                <asp:MenuItem Text="International&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;" 
                    Value="Customer_International"
                    NavigateUrl="~/MyMain.aspx?_page=IndCusts&_title=InternationalCustomers">
                </asp:MenuItem>
            </asp:MenuItem>
        </Items>
    </asp:Menu>
</asp:TableCell>

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

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

1 Ответ

0 голосов
/ 18 февраля 2011

Это оказывается довольно простым. В приведенном выше примере я предоставляю идентификатор для элемента верхнего уровня («Клиенты») и удаляю свойство Text, чтобы отображалось только изображение, на которое есть ссылка в ImageURL.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...