激活当前视图菜单高亮呈现 V2.0

前一段时间,Insus.NET有分享一篇《激活当前视图菜单高亮呈现http://www.cnblogs.com/insus/p/5287093.html 这篇只是同一控制器的菜单。

今天分享一篇,是随不同的控制器,呈现一个网站菜单导向。找到一个网站:http://www.engtek.com/services.html ,这个网站除了首页,其它子页均有一个菜单导向:

上图3个标记,它会随所进入的子页不同作相应的变化,标记#1显示菜单文本,标记#2,导航菜单,标记#3是背景图片。

一般情况之下,你在设计这网站这部分时,你每个子页放这段代码,拷贝与修改文字以及背景图片。

<section class="main-contents dot-overlay engtek-bg8 parallax" data-stellar-background-ratio="0.6">
   <div class="container">
     <div class="section-title section-title-style7 padding-top30">
       <h4 class="red-color">Services</h4>
       <div class="breadcrumbs-container">
                    <div class="container">
                        <ul class="breadcrumb">
                            <li><a href="index.html">Home</a></li>
                            <li><a href="services.html">Services</a></li>
                            <li class="active">New Product Introduction</li>
                        </ul>
                    </div>
                </div>
     </div>
   </div>
 </section> 

下面高亮部分是变化的部分:

或是较好的办法,每一个控制器下的视图做成一个部分视图。

不过上面的,均不是Insus.NET所想需要的。Insus.NET的做法只是在全站使用一个部分视图即可。如果这样实现的话,你得需要知道前当前请求的是哪一个控制器,哪一个视图。
没有关系,这个已经知道了:《获取当前视图名http://www.cnblogs.com/insus/p/5283729.html

其实这都不是问题,问题是知道了控制器和视图名之后,还人得根据控制器名来获取该控制器下的所有视图(也就是子菜单)。

解决这个问题,Insus.NET使用了接口,反射等技术:

下是接口,可以根据你的实际情况,所使用的属性,方法等:

然后在每一个控制器或控制器Entity中实现这个接口:

最后可以部分视图可以这样写:

时间: 2024-07-29 14:17:17

激活当前视图菜单高亮呈现 V2.0的相关文章

Heatmap.js v2.0 – 最强大的 Web 动态热图

Heatmap 是用来呈现一定区域内的统计度量,最常见的网站访问热力图就是以特殊高亮的形式显示访客热衷的页面区域和访客所在的地理区域的图示.Heatmap.js 这个 JavaScript 库可以实现各种动态热力图的网页,帮助您研究和可视化用户的行为. Heatmap.js V2.0 是目前网络上最先进的热图可视化库.新的2.0版本 Heatmap.js 更快,拥有更强的渲染模块,使用更方便,因此您可以快速掌握和扩展自定义功能. 插件下载     效果演示 下面是一个简单的调用示例: // mi

百度地图V2.0实践项目开发工具类bmap.util.js V1.4

/** * 百度地图使用工具类-v2.0(大眾版) * * @author boonya * @date 2013-7-7 * @address Chengdu,Sichuan,China * @email [email protected] * @company KWT.Shenzhen.Inc.com * @notice 有些功能需要加入外部JS库才能使用,另外还需要申请地图JS key . * 申请地址:http://developer.baidu.com/map/apply-key.ht

UiBot Creator V2.0上线

自打UiBot 1.0问世以来在不到两个月的时间里UiBot注册用户即将突破1万人!UiBot能取得今天这样的成绩离不开伙伴们的支持更离不开团队程序猿们的辛苦付出!在注册用户破万之际UiBot也终于迎来了V2.0全新版本的上线UiBot Creator V2.0 UiBotV2.0用户界面 让我们来看看V2.0会给伙伴们带来怎样的体验1 新增流程设计视图 范例:获取今日股票行情2.修改插件机制免除COM插件注册3.增加分级日志.HTTP功能组件 调整OCR组件设计4.选择器加入SAP.JNLP支

混合模式程序集是针对“v2.0.50727”版的运行时生成的,在没有配置其他信息的情况下,无法在 4.0 运行时中加载该程序集

其调用的方法是从sqlite数据库中获取原来已经使用过的数据库连接,当时也没注意,就是准备设断点然后单步调试,结果竟然是断点无法进入方法体内,后来仔细看了一下方法体的时候发现了一个问题,就是现有的System.Data.Sqlite这个数据访问provider是针对.NET2.0环境开发(最新的版本是1.0.66.0,2010年4月18日发布的),而目前官方也没有给出最新的.NET4的数据访问支持. 既然出现这个问题,那肯定是上GOOGLE搜索解决方案,毕竟微软不可能因为升级到了.NET4.0的

ArcGIS Runtime for Android开发教程V2.0(2)开发环境配置

原文地址: ArcGIS Runtime for Android开发教程V2.0(2)开发环境配置 - ArcGIS_Mobile的专栏 - 博客频道 - CSDN.NET http://blog.csdn.net/arcgis_mobile/article/details/8113948   2.开发环境配置 2.1 系统要求 1)      支持的操作系统 A.      Windows XP(32位).Vista(32/64位).Windows 7(32/64位) B.      Mac

ArcGIS Runtime for Android开发教程V2.0(3)基础篇---Hello World Map

原文地址: ArcGIS Runtime for Android开发教程V2.0(3)基础篇---Hello World Map - ArcGIS_Mobile的专栏 - 博客频道 - CSDN.NET http://blog.csdn.net/arcgis_mobile/article/details/8124005 通过上面章节,我们已经了解如何配置一个ArcGIS Runtime for Android开发环境,下面我们将介绍如何使用Eclipse创建一个ArcGIS移动项目Hello W

ArcGIS Runtime for Android开发教程V2.0(4)基础篇---MapView

原文地址: ArcGIS Runtime for Android开发教程V2.0(4)基础篇---MapView - ArcGIS_Mobile的专栏 - 博客频道 - CSDN.NET http://blog.csdn.net/arcgis_mobile/article/details/8147328 MapView是ArcGIS Runtime SDK forAndroid的核心组件,通过MapView可以呈现地图服务的数据,并且在MapView中定义了丰富的属性.方法和事件,用户通过Map

CSoft.RGS.v10.0.0.003自动处理现场测量+SurvGNSS.2016.v2.0

CSoft.RGS.v10.0.0.003自动处理现场测量    该软件被设计用于自动处理现场测量,用于测量领域工作的专业人员(工程测量,施工,库存).该 程序是在大地测量公司的基础上发展的?rumb?,基于算法萨福诺夫(miigaik). CSoft.RGS.v10.0.0.003 StatSoft.STATISTICA.V10.0.1011.6.Enterprise整合数据分析 Zeataline.Projects.PipeData-PRO.v10.0.21 ASME管道数据查询软件 AUC

【转】Sqlite 混合模式程序集是针对“v2.0.50727”版的运行时生成的,在没有配置其他信息的情况下,无法在 4.0 运行时中加载该...

开发环境: vs2010+.net framework 4.0+ System.Data.SQLite.DLL (2.0)今天在做Sqlite数据库测试,一运行程序在一处方法调用时报出了一个异常 混合模式程序集是针对“v2.0.50727”版的运行时生成的,在没有配置其他信息的情况下,无法在 4.0 运行时中加载该程序集 其调用的方法是从sqlite数据库中获取原来已经使用过的数据库连接,当时也没注意,就是准备设断点然后单步调试,结果竟然是断点无法进入方法体内,后来仔细看了一下方法体的时候发现了