类似OutLook布局的开源控件XPanderControls
最近.net项目中涉及到.net开源项目, 其中要使用 左边有导航栏 菜单的 程序, 查了一下资料, 使用开源控件XPanderControls可以实现这个效果.
先研究一下.
1.官网:http://www.codeproject.com/Articles/18401/XPanderControls
里面有源代码和 一个api的html帮助 程序.
2.源代码应该是拿vs2008 制作的, 用vs2013打开的时候, 出现了打开的问题. 提示迁入不成功, 也没花时间研究vs2013是怎么改变sln文件来打开备份的.
最后还是从网上找了一个编好的.net framework 2.0的编译版本, 然后再从test项目里面把 cs文件之类的 自己又做了一个 test 演示项目
加载resouce文件的时候出现问题. 把property文件夹 里面的内容从解决方案里面删除掉. 改解决方案的命名空间 使用和test 项目一样的命名空间
注意resource文件 得重新添加到项目, 并且注意改一下 resource文件里面的GUid和 新的解决方案的Guid一样
3.使用方法:
1.Splitter 这个是个类似SplitContainer的 功能, 支付 父容器 可以分开 2个BSE.Windows.Forms.Panel(), 这样可以涉嫌Panel大小控制
2. BSE.Windows.Forms.Panel() 是实现 out的停靠功能, 设置dock属性, 就可以停靠在top, left, right, bottom. 最后fill就是pane是 fill panel.
见下图中不同的panel中的不同的dockStyle.
3. xPanderPanelList1是存放不用的xpanederPanel的, this.panel1.Controls.Add(this.xPanderPanelList1) 这样把list加入到pane中.
在视窗设计中, 使用xPanderPanelList 编辑添加成员XPanderPanel的时候 一直有问题, 不知道是我的机器问题, 还是本身有bug. 只有自己写生成XPanderPanel的代码了
4.XPanderPanel是可以有子xPanderPanelList的, 见上图中的XPanderPanel16,XPanderPanel17
下面是一些常用的属性
this.xPanderPanel1 = new BSE.Windows.Forms.XPanderPanel();
xPanderPanel1.Text = "xPanderPanel1";
xPanderPanel1.ShowCloseIcon = false;
xPanderPanel1.CaptionFont = new Font("Segoe UI", 11f, FontStyle.Bold);
5.XPanderPanel.controls.是可以添加 treeView和ListView的:
1 // 2 // treeView1 3 // 4 this.treeView1.BorderStyle = System.Windows.Forms.BorderStyle.None; 5 resources.ApplyResources(this.treeView1, "treeView1"); 6 this.treeView1.ImageList = this.imageList1; 7 this.treeView1.Name = "treeView1"; 8 this.treeView1.Nodes.AddRange(new System.Windows.Forms.TreeNode[] { 9 ((System.Windows.Forms.TreeNode)(resources.GetObject("treeView1.Nodes")))}); 10 this.treeView1.ShowLines = false; 11 12 13 this.xPanderPanel7.Controls.Add(this.treeView1);