我在.Net 4.0中开始了一个Web应用程序,其中一个优点是Web应用程序最初是使用漂亮的水平菜单栏创建的。
我需要将其降级到.Net 3.5,当我这样做时,我会丢失Microsoft.CSharp.dll引用,并且此菜单将转换为丑陋的标准超链接。在.Net 3.5中是否有办法保留此菜单?
Per Jon的要求: 这是来自Site.Master。它是自动生成的(虽然我复制了占位符的“关于”按钮)。
<div class="clear hideSkiplink">
<asp:Menu ID="NavigationMenu" runat="server" CssClass="menu" EnableViewState="false" IncludeStyleBlock="false" Orientation="Horizontal" >
<Items>
<asp:MenuItem NavigateUrl="~/Default.aspx" Text="Home"/>
<asp:MenuItem NavigateUrl="~/About.aspx" Text="About"/>
<asp:MenuItem NavigateUrl="~/About.aspx" Text="Community"/>
<asp:MenuItem NavigateUrl="~/About.aspx" Text="Extras"/>
<asp:MenuItem NavigateUrl="~/About.aspx" Text="Contact"/>
</Items>
</asp:Menu>
</div>
代码隐藏中没有任何内容。它是空的。
CSS:
/* TAB MENU
----------------------------------------------------------*/
div.hideSkiplink
{
background-color:#3a4f63;
width:100%;
}
div.menu
{
padding: 4px 0px 4px 8px;
}
div.menu ul
{
list-style: none;
margin: 0px;
padding: 0px;
width: auto;
}
div.menu ul li a, div.menu ul li a:visited
{
background-color: #465c71;
border: 1px #4e667d solid;
color: #dde4ec;
display: block;
line-height: 1.35em;
padding: 4px 20px;
text-decoration: none;
white-space: nowrap;
}
div.menu ul li a:hover
{
background-color: #bfcbd6;
color: #465c71;
text-decoration: none;
}
div.menu ul li a:active
{
background-color: #465c71;
color: #cfdbe6;
text-decoration: none;
}
其他信息: 以上是.Net 3.5。 .Net 4.0在各个方面都与它相同。两个项目之间的唯一区别(让它们并排打开)是CSharp引用在3.5项目中具有!bang,因为它是无效的引用。
删除参考没有任何积极影响。