EasyMvc入门教程-基本控件说明(11)菜单导航
基本上,是个网站就会有菜单导航,目前流行的菜单是不是这样样子的?

似乎是bootstrap引领的风格,我们就用EasyMvc实现吧,上代码:
@{
var data = new List<MenuItem>()
{
new MenuItem() {Id = "1", Text = "主页", Url = "http://zwc.cn"},
new MenuItem() {Id = "2", Text = "文章管理"},
new MenuItem() {Id = "3", ParentId = "2", Text = "文章删除"}
};
}
<br><br><br>
@Html.Q().Menu().SourceItems(data)
怎么样,是不是还是一如既往的简单?准备数据,调用EasyMvc的Menu控件。。
不过,有点细节需要交代下:大家注意到Id和ParentId没:如果是一级菜单,ParentId是不需要赋值的;对于二级菜单,那么就需要将一级菜单的某个Id值赋给二级菜单的ParentId了,详见上面代码的ParentId赋值情况。
继续往下讲,我们可以给菜单加上图标,以提供些档次,上代码:
@{
var data = new List<MenuItem>()
{
new MenuItem() {Id = "1", Text = Html.Q().Ico().Type(EasyMvcHelper.IcoType.Home).ColorGray() + "主页", Url = "http://zwc.cn"},
new MenuItem() {Id = "2", Text = Html.Q().Ico().Type(EasyMvcHelper.IcoType.Document).ColorGray() + "文章管理"},
new MenuItem() {Id = "3", ParentId = "2", Text =Html.Q().Ico().Type(EasyMvcHelper.IcoType.Del1).ColorPrimary() + "文章删除"}
};
}
<br><br><br>
@Html.Q().Menu().SourceItems(data)
效果截图如下:

大家看到没:菜单和按钮运用图标的方法是不是一样的?:)
考虑到很多时候存在竖直方向的菜单,EasyMvc也提供了如下风格的菜单,请查看:
- 竖直菜单
效果图:

实现代码如下:
@{
var data = new List<MenuItem>()
{
new MenuItem() {Id = "1", Text = "主页", Url = "http://zwc.cn"},
new MenuItem() {Id = "2", Text = "文章管理"},
new MenuItem() {Id = "3", ParentId = "2", Text = "文章删除"}
};
}
<br><br><br>
@Html.Q().Menu().SourceItems(data).AsVerticalSide()
- 左侧边菜单
效果图:

代码实现如下:
@{
var data = new List<MenuItem>()
{
new MenuItem() {Id = "1", Text = "主页", Url = "http://zwc.cn"},
new MenuItem() {Id = "2", Text = "文章管理"},
new MenuItem() {Id = "3", ParentId = "2", Text = "文章删除"}
};
}
<br><br><br>
@Html.Q().Menu().SourceItems(data).AsLeftSide()
总结:菜单导航和图片轮播导航基本是前端网站开发必备的,对了还有一个叫Banner的,基本这三个完成后,前端网页就搞定了一大半(不好意思,说的是中小型网站。。)希望后续这些都能帮到大家。
更多使用示例请浏览在线示例:http://core.zwc.cn
EasyMvc入门教程-基本控件说明(11)菜单导航的更多相关文章
- EasyMvc入门教程-基本控件说明(8)提醒导航
提醒导航顾名思义就是提醒大家注意某些文字了..请看下面的例子: 实现代码如下: @Html.Q().BlockRemind().Text("我可以作为提醒使用") 有的同学会说:这 ...
- EasyMvc入门教程-基本控件说明(13)选项卡导航
选项卡Tab导航主要用于企业页面显示不同子类或者子页面的信息内容. 先来一个基本的使用例子:代码如下: @{ var data = new List<TabItem>() { new Ta ...
- EasyMvc入门教程-图形控件说明(21)线形图+柱状图+饼形图
本章将介绍一些基本但常用的图形:线型图,柱状图和饼形图. 以上三种图形对于的数据都是键值对数组,请参考第一个例子: @{ var data = new List<LineItem>(); ...
- EasyMvc入门教程-基本控件说明(1)按钮
按钮是我们最常用的控件之一了,先看下我们提供的按钮风格: 不同颜色的: 实现代码: @Html.Q().Button().Text("Danger").ColorDanger() ...
- EasyMvc入门教程-基本控件说明(4)折叠面板
折叠面板一般出现在管理后台,大家用的OutLook里就是用了折叠面板,样子大概是这样的: 把其中的内容替换成图标按钮,是不是就是我们常见的样子了?:)那么如何实现呢?请看例子: @{ var data ...
- EasyMvc入门教程-基本控件说明(6)进度条
进度条的发明是很牛逼的,就如12306采用了队列解决了系统崩溃的问题一样..:) 进度条大家都见过,那么我们先来实现一个简单的进度条,请看例子: @Html.Q().Progress().Value( ...
- EasyMvc入门教程-基本控件说明(12)栏目导航
栏目导航一般用来显示当前页面所在的模块层级位置关系,如下图所示: 当然也有前端网站作为小栏目导航,凡是没有绝对,只要不违和就好:),下面上代码: @{ var data = new List<N ...
- EasyMvc入门教程-基本控件说明(9)引言导航
休息片刻后,继续开工... 这次我们继续学习引言导航,引言导航主要用于知识点的开始,起到知识点导航的作用.直接例子: 实现代码如下: @Html.Q().BlockRef().Title(" ...
- EasyMvc入门教程-基本控件说明(2)定时器
我们有时候希望系统能自动刷新后台数据或者做某个动作,那么定时器的作用就体现出来了. EasyMvc默认提供的服务器可以定时调前端方法与定时调后端方法,先看例子: 定时调客户端事件 实现代码: @Htm ...
随机推荐
- jsonp的原理及应用
https://blog.csdn.net/u011897301/article/details/52679486
- c#中dynamic ExpandoObject的用法
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; usin ...
- 关于caffe 是如何卷积的一点总结
最近,在看caffe源码时,偶然在网上看到一个问题?觉得挺有意思,于是,仔细的查了相关资料,并将总结写在这里,供大家迷惑时,起到一点启示作用吧. 问题的题目是CNN中的一个卷积层输入64个通道的特征子 ...
- 手机安装app总是显示未安装
手机安装软件总是显示未安装 查看是否开启了护眼模式或者护眼工具等干扰屏幕的软件.关掉,再安装即可
- HEAD DETACHED push origin失败问题
先说HEAD HEAD是一个头指针,通常情况下指向不同的分支,每个分支对应一个commit(准确的说,每个分支对应多个commit,但是只有一个顶层的commit,而commit之间是简单的线性关系. ...
- mysql再次安装问题
安装过一次mysql的电脑,想再安装或更换其它版本的mysql.在重新安装的最后一步,总会出现这样的问题. 网上说法也很多,什么删除注册表了等等.这都是狗屁. 真正的做法是找到C盘下的隐藏文件夹Pro ...
- [SDOI2015][bzoj3994] 约数个数和 [莫比乌斯反演]
题面: 传送门 思路: 首先,我们需要证明一个结论:d(i*j)等于sigma(gcd(x,y)==1),其中x为i的约数,y为j的约数 对于nm的每一个质因子pi分别考虑,设n = pi^ai + ...
- input上传多张图片
input的file上传多张图片的时候,用ajaxupload这个插件的时候,每次执行完,需要重新生成元素再绑定事件
- 【21】vuex 与element iu表单校验
转:http://www.cnblogs.com/gsgs/p/6753682.html element-ui的官网上写的自定义表单验证,方法都是写在单vue文件中的,不容易共享.怎么使用vuex将方 ...
- 分裂游戏(bzoj 1188)
Description 聪聪和睿睿最近迷上了一款叫做分裂的游戏. 该游戏的规则试: 共有 n 个瓶子, 标号为 0,1,2.....n-1, 第 i 个瓶子中装有 p[i]颗巧克力豆,两个人轮流取豆子 ...