一:navBarControl 属性设置

工具箱中的Navigation & Layout选项卡下找到NavBarControl,拖到窗体中

工具箱中添加2个imageCollection。分别设置Item的大小图标集合,选择相应图片添加到集合中。(大图标32*32,小图标16*16)

      navBarControl 属性面板中:

      Dock设置为Left  ; ParntStyleName皮肤样式,设置为SkinNav:Xmas 2008 Blue

NavigationPaneMaxVisibleGroups,默认值为-1,显示全部Group; 修改为0,即一个都不显示

Run Designer进行Group和Items的添加,Item添加好拖到相应的Group下面即可。

Group属性——》GroupCaptionUseImage,为Group按钮添加图标,设置图标显示方式,小图标或大图标,默认显示小图标。

a:从ImageCollection集合中选择图片(设置LargeImageIndex / SmallImageIndex=0),设置成相应图片下标即可。

b:或者直接设置属性LargeImage / SmallImage 选择需要图标。

Item属性——》 GroupStyle,为Item按钮添加图标,设置图标的显示样式,默认为图标在左边文字在右边,默认显示小图标。

LargeIconsText图标在上方,文字在下方。 添加图标同Group属性 a,b相同

二: xtraTabbedMdiManager实现浏览器标签页效果

       1:添加多文档标签界面:      

         public void OpenMDIWindow(String ChildTypeString, Object[] args)
{
if (String.IsNullOrWhiteSpace(ChildTypeString))
return; var fullName = String.Format("{0}.{1}", GetType().Namespace, ChildTypeString);
if (ContainMDIChild(fullName))
return; Type typForm = Assembly.GetExecutingAssembly().GetType(fullName);
if (typForm == null)
return; Object obj = typForm.InvokeMember(
null,
BindingFlags.DeclaredOnly |
BindingFlags.Public | BindingFlags.NonPublic |
BindingFlags.Instance | BindingFlags.CreateInstance,
null,
null,
args); if (obj == null)
return; Form myChild = obj as Form;
myChild.MdiParent = this;
myChild.WindowState = FormWindowState.Maximized;
myChild.Show();
}

 2:判断是否已经显示该子窗体        

       //判断MDI中是否已存在当前窗体
private Boolean ContainMDIChild(String ChildTypeString)
{
foreach (Form f in MdiChildren)
{
if (f.GetType().ToString() == ChildTypeString)
{
f.Select();
return true;
}
}
return false;
}

3:navBarControl事件LinkPressed调用(注意:Item.Tag需要设置成窗体的Name)

        private void navBarControl1_LinkPressed(object sender, DevExpress.XtraNavBar.NavBarLinkEventArgs e)
{
if (e.Link.Item.Tag != null)
{
try
{
OpenMDIWindow(e.Link.Item.Tag.ToString(), null);
}
catch (Exception ex)
{
Log.WriteLog(ex.ToString(), UserInfo.LoginName);
}
}
}

       最终效果图如下:

      

DevExpress navBarControl 和 xtraTabbedMdiManager实现浏览器标签页效果的更多相关文章

  1. js基础--浏览器标签页隐藏或显示状态 visibility详解

    欢迎访问我的个人博客:http://www.xiaolongwu.cn 前言 在工作中我们可能会遇到这样的需求,当浏览器切换到别的标签页或着最小化时,我们需要暂停页面上正在播放的视频或者音乐,这个需求 ...

  2. selenium WebDriver 对浏览器标签页的切换

    关于selenium WebDriver 对浏览器标签页的切换,现在的市面上最新的浏览器,当点击一个链接打开一个新的页面都是在浏览器中打开一个标签页,而selenium只能对窗口进行切换的方法,只能操 ...

  3. 为网站设置icon图标用于显示在浏览器标签页最左侧

    icon图标,想必大家对它并不陌生吧,在浏览网页时会看到浏览器标签页的最左侧会有一个小图标,这个正是icon图标.本例为大家介绍下如何为网站设置这个图标 这句话起什么作用 ?复制代码 代码如下: &l ...

  4. JS监听浏览器标签页的显示与隐藏

    /** * 监听浏览器标签页的显示与隐藏 */ class ListenerPageVisibility { constructor () { // 设置隐藏属性和改变可见属性的事件的名称 this. ...

  5. jquery实战---标签页效果

    在前面的博客中,小编主要简单的介绍了jquery的一些基本知识,今天这篇博文,小编继续来学习jquery的相关知识,今天我们来学习一个标签页的小例子,相关源码小编已经上传,有需要的小伙伴可以自己去下载 ...

  6. 实战Jquery(四)--标签页效果

            这两天完毕了实战四五六的样例,实例四是标签页的实现方法,实例五是级联菜单下拉框,实例六是窗体效果,都是web层经常使用的效果.越到后面越发认为技术这东西,就是一种思路的展现,懂了要实现 ...

  7. selenium+python 浏览器标签页跳转 switch_to_window

    浏览器页面跳转方法记录: from selenium import webdriver import time browser = webdriver.Chrome() first_url='http ...

  8. 关于饿了么在浏览器标签页失去焦点时网页Title改变的实现方法

    说在前面:必须是基于支持H5的浏览器才可以 这个 API 本身非常简单,由以下三部分组成. document.hidden:表示页面是否隐藏的布尔值.页面隐藏包括 页面在后台标签页中 或者 浏览器最小 ...

  9. selenium 对浏览器标签页进行关闭和切换

    关闭标签页 # 1.关闭浏览器全部标签页 driver.quit() # 2.关闭当前标签页(从标签页A打开新的标签页B,关闭标签页A) driver.close() 切换标签页 from selen ...

随机推荐

  1. LeetCode3 Longest Substring Without Repeating Characters

    题意: Given a string, find the length of the longest substring without repeating characters. Examples: ...

  2. entity framework 连接 oracle 发布后出现的问题(Unable to find the requested .Net Framework Data Provider)

    用entity framework 搭建的一个windows 程序,在vs中用oracle 的ODT 工具连接oracle数据库,昨天发布后出现下面一个错误, System.ArgumentExcep ...

  3. [Java] 使用 Spring 2 Portlet MVC 框架构建 Portlet 应用

    转自:http://www.ibm.com/developerworks/cn/java/j-lo-spring2-portal/ Spring 除了支持传统的基于 Servlet 的 Web 开发之 ...

  4. ajax步骤和理解

    步骤: 1.利用html+css来实现页面,表达信息: 2.用XMLHttpRequest和web服务器进行数据的异步交换 3.运营js操作DOM,实现动态局部刷新: XMLHttpRequest对象 ...

  5. 【Shell脚本学习5】第一个Shell脚本

    打开文本编辑器,新建一个文件,扩展名为sh(sh代表shell),扩展名并不影响脚本执行,见名知意就好,如果你用php写shell 脚本,扩展名就用php好了. 输入一些代码: #!/bin/bash ...

  6. 【Android 界面效果25】android中include标签的使用

    在一个项目中我们可能会需要用到相同的布局设计,如果都写在一个xml文件中,代码显得很冗余,并且可读性也很差,所以我们可以把相同布局的代码单独写成一个模块,然后用到的时候可以通过<include ...

  7. C如何使用内存

    栈:   自动变量:auto.变量的地址在栈中.   C语言函数调用的实现: 在调用方,参数从后往前按顺序被堆积在栈中 和函数调用关联的返回信息(返回地址等)也被堆积在栈中. 一旦函数调用结束,局部变 ...

  8. IOS设计模式六大法则

    设计模式的六大原则 单一职责原则 定义:不要存在多于一个导致类变更的原因.通俗的说,即一个类只负责一项职责 问题由来:类T负责两个不同的职责:职责P1,职责P2.当由于职责P1需求发生改变而需要修改类 ...

  9. (三)u-boot2013.01.01 for TQ210:《mkconfig分析》

    /* 和分析makefile一样,分析mkconfig同样注重句法分析 */ ############################################################# ...

  10. [Android]AndroidDesign中ActionBar探究1

    概述 从Google IO 2013大会以来越来越多的Android应用开始遵循Android的设计风格,简单的就是google play和Gmail,在国内我们常用的软件像知乎.印象笔记,主要的界面 ...