ASP.NET - 如何:自定义 SiteMapPath Web 服务器控件的外观

      您可以通过设置站点导航控件的属性或为该控件配置适用的模板,自定义该控件的可视外观。模板和样式根据 SiteMapPath 的“备注”部分中介绍的两个优先级规则应用于链接。

此外,您也可以将主题或控件外观应用于控件,还可以开发符合您的呈现需要的自定义站点导航控件。

SiteMapPath 控件显示一个导航路径(也称为 breadcrumb eyebrow),它以路径形式显示当前页面返回到网站主页的链接。在某一 ASP.NET 页上,SiteMapPath 控件显示类似于以下的内容:

主页 > 服务 > 培训

TreeView Menu 控件也呈现站点地图数据,它们与 SiteMapPath 控件类似,可以像大多数其他 Web 控件一样进行自定义。本主题介绍如何使用 SiteMapPath Web 服务器控件的下列自定义功能:

·指定显示在链接之间的字符或图像。

      ·反转导航路径的方向。

      ·指定显示的父链接的数量。

 

本主题中介绍的过程假定您已创建了一个站点地图和一个包含 SiteMapPath 控件的页面。您可以在 ASP.NET 站点地图中使用 Web.sitemap 示例文件。

 

一、自定义链接样式属性

1、在包含 SiteMapPath 控件的 ASP.NET 网页中,向控件添加以下属性:

RootNodeStyle-Font-Names="Verdana"

RootNodeStyle-ForeColor="Orange"

RootNodeStyle-BorderWidth=2

      例如,SiteMapPath 控件的代码如下所示:

<asp:SiteMapPath ID="SiteMapPath1" Runat="server"

  SkipLinkText="Skip Menu"

  RootNodeStyle-Font-Names="Verdana"

  RootNodeStyle-ForeColor="Orange"

  RootNodeStyle-BorderWidth=2 >

</asp:SiteMapPath>

      可以使用 Style FontInfo 类中介绍的大多数属性,其中包括 CssClass 属性。

 

2、如果希望每个链接的样式各不相同,请对 SiteMapPath 控件的 ParentNodeStyleCurrentNodeStyle PathSeperatorStyle 属性分别重复上一步骤。

      说明: 若要提高性能,可以使用 NodeTemplate 一次性完成所有链接的样式自定义。

 

二、自定义显示在链接之间的字符

在包含 SiteMapPath 控件的 ASP.NET 网页中,向该控件添加 PathSeparator 属性。

例如,SiteMapPath 控件的代码如下所示:

<asp:SiteMapPath ID="SiteMapPath1" Runat="server"

  PathSeparator=" :: ">

</asp:SiteMapPath>

您的 SiteMapPath 控件将显示类似下面的内容:

主页 :: 服务 :: 培训

可以使用任意字符串分隔链接,但若要使用图像分隔链接,请按照下面步骤操作。

 

三、指定显示在链接之间的图像

在包含 SiteMapPath 控件的 ASP.NET 网页中,向控件添加以下代码行:

<PathSeparatorTemplate>

  <asp:Image ID="Image1" Runat="Server"

    Width="20"

    ImageUrl="Images/PathSeparatorImage.jpg" />

  </PathSeparatorTemplate>

</PathSeparatorTemplate>

 

例如,SiteMapPath 控件的代码如下所示:

<asp:SiteMapPath ID="SiteMapPath1" Runat="server" >

  <PathSeparatorTemplate>

    <asp:Image ID="Image1" Runat="Server"

      Width="20"

      ImageUrl="Images/PathSeparatorImage.jpg" />

    </PathSeparatorTemplate>

  </PathSeparatorTemplate>

</asp:SiteMapPath>

 

四、反转 SiteMapPath 控件所显示的路径的方向

在包含 SiteMapPath 控件的 ASP.NET 网页中,向该控件添加 PathDirection PathSeparator

例如,SiteMapPath 控件的代码如下所示:

<asp:SiteMapPath ID="SiteMapPath1" Runat="server"

  PathDirection="CurrentToRoot"

  PathSeparator=" <-- " >

</asp:SiteMapPath>

 

五、限制显示的父链接的数量

在包含 SiteMapPath 控件的 ASP.NET 网页中,向该控件添加 ParentLevelsDisplayed 属性。

例如,最多显示两个父链接的 SiteMapPath 控件的代码如下所示:

<asp:SiteMapPath ID="SiteMapPath1" Runat="server"

  ParentLevelsDisplayed="2" >

</asp:SiteMapPath>

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值