asp : 如何将菜单的箭头放在左侧(对于从右到左的网络应用程序)
asp : how to place menu's arrow on the left side (for right-to-left web-app)
asp.net-4.5 , Visual-Studio-2013 , Win7.
在最小化的项目上重现了该问题:带有 1 个带有 Dir=rtl(从右到左)和 Menu 的 Web 表单的空 Web 应用程序控制。
工作正常,但箭头在右侧,我需要在左侧。
这是我得到的:
这就是我需要的(我用 Paint 制作了这张图片):
围绕 here 有一个解决方案,但它适用于 asp.net-2.0。不适用于 4.5。
我的代码:
<%@ Page Language="C#" CodeBehind="WebForm1.aspx.cs" Inherits="Arrow_RTL_in_Menu.WebForm1" %>
<!DOCTYPE html>
<html dir="rtl" xmlns="http://www.w3.org/1999/xhtml">
<head runat="server"><title></title></head>
<body>
<form id="form1" runat="server">
<div>
<asp:Menu ID="Menu1" runat="server"
StaticPopOutImageUrl="~/Images/Left_Arrow.gif"
DynamicPopOutImageUrl="~/Images/Left_Arrow.gif">
<Items>
<asp:MenuItem Text="AAA" Value="AAA" NavigateUrl="~/Default.aspx">
<asp:MenuItem Text="AAA-1" Value="AAA-1" NavigateUrl="~/Default.aspx"></asp:MenuItem>
<asp:MenuItem Text="AAA-2" Value="AAA-2" NavigateUrl="~/Default.aspx"></asp:MenuItem>
<asp:MenuItem Text="AAA-3" Value="AAA-3" NavigateUrl="~/Default.aspx"></asp:MenuItem>
</asp:MenuItem>
<asp:MenuItem Text="BBB" Value="BBB" NavigateUrl="~/Default.aspx">
<asp:MenuItem Text="BBB-1" Value="BBB-1" NavigateUrl="~/Default.aspx">
<asp:MenuItem Text="BBB-1-1" Value="BBB-1-1" NavigateUrl="~/Default.aspx"></asp:MenuItem>
<asp:MenuItem Text="BBB-1-2" Value="BBB-1-2" NavigateUrl="~/Default.aspx"></asp:MenuItem>
</asp:MenuItem>
<asp:MenuItem Text="BBB-2" Value="BBB-2" NavigateUrl="~/Default.aspx"></asp:MenuItem>
<asp:MenuItem Text="BBB-3" Value="BBB-3" NavigateUrl="~/Default.aspx"></asp:MenuItem>
</asp:MenuItem>
</Items>
</asp:Menu>
</div>
</form>
</body>
</html>
如果知道从哪里开始寻找,我们将不胜感激!谢谢!
在另一个论坛中得到答案:
在菜单属性列表中,在 "Layout" 类别下,我更改了 RenderingMode 属性到“Table”。
我现在的代码(进行更改的地方):
<asp:Menu ID="Menu1" runat="server"
StaticPopOutImageUrl="~/Images/Left_Arrow.gif"
DynamicPopOutImageUrl="~/Images/Left_Arrow.gif" RenderingMode="Table">
<Items> .........
干得漂亮!!!
加迪
asp.net-4.5 , Visual-Studio-2013 , Win7.
在最小化的项目上重现了该问题:带有 1 个带有 Dir=rtl(从右到左)和 Menu 的 Web 表单的空 Web 应用程序控制。
工作正常,但箭头在右侧,我需要在左侧。
这是我得到的:
这就是我需要的(我用 Paint 制作了这张图片):
围绕 here 有一个解决方案,但它适用于 asp.net-2.0。不适用于 4.5。
我的代码:
<%@ Page Language="C#" CodeBehind="WebForm1.aspx.cs" Inherits="Arrow_RTL_in_Menu.WebForm1" %>
<!DOCTYPE html>
<html dir="rtl" xmlns="http://www.w3.org/1999/xhtml">
<head runat="server"><title></title></head>
<body>
<form id="form1" runat="server">
<div>
<asp:Menu ID="Menu1" runat="server"
StaticPopOutImageUrl="~/Images/Left_Arrow.gif"
DynamicPopOutImageUrl="~/Images/Left_Arrow.gif">
<Items>
<asp:MenuItem Text="AAA" Value="AAA" NavigateUrl="~/Default.aspx">
<asp:MenuItem Text="AAA-1" Value="AAA-1" NavigateUrl="~/Default.aspx"></asp:MenuItem>
<asp:MenuItem Text="AAA-2" Value="AAA-2" NavigateUrl="~/Default.aspx"></asp:MenuItem>
<asp:MenuItem Text="AAA-3" Value="AAA-3" NavigateUrl="~/Default.aspx"></asp:MenuItem>
</asp:MenuItem>
<asp:MenuItem Text="BBB" Value="BBB" NavigateUrl="~/Default.aspx">
<asp:MenuItem Text="BBB-1" Value="BBB-1" NavigateUrl="~/Default.aspx">
<asp:MenuItem Text="BBB-1-1" Value="BBB-1-1" NavigateUrl="~/Default.aspx"></asp:MenuItem>
<asp:MenuItem Text="BBB-1-2" Value="BBB-1-2" NavigateUrl="~/Default.aspx"></asp:MenuItem>
</asp:MenuItem>
<asp:MenuItem Text="BBB-2" Value="BBB-2" NavigateUrl="~/Default.aspx"></asp:MenuItem>
<asp:MenuItem Text="BBB-3" Value="BBB-3" NavigateUrl="~/Default.aspx"></asp:MenuItem>
</asp:MenuItem>
</Items>
</asp:Menu>
</div>
</form>
</body>
</html>
如果知道从哪里开始寻找,我们将不胜感激!谢谢!
在另一个论坛中得到答案:
在菜单属性列表中,在 "Layout" 类别下,我更改了 RenderingMode 属性到“Table”。
我现在的代码(进行更改的地方):
<asp:Menu ID="Menu1" runat="server"
StaticPopOutImageUrl="~/Images/Left_Arrow.gif"
DynamicPopOutImageUrl="~/Images/Left_Arrow.gif" RenderingMode="Table">
<Items> .........
干得漂亮!!!
加迪