DotNetBar布局(一)

article/2025/10/21 7:41:33

相信大家搞.NET桌面程序开发都会用到一些界面布局的组件,常用的由DotNetBar和devexpress。今天主要将DotNetBar在项目中布局简单介绍一下,个人感觉这个控件还是有很多bug的,不知道什么时候就出现莫名奇妙的排版问题错误。比如突然在设计视图DotNetBar控件不能编辑了,又或者突然运行时界面布局是正确的,但是设计视图中控件位置或者属性发生莫名奇妙的变化,又或者由于电脑分辨率的问题,突然控件的全貌显示不完全等。一系列的问题,在网上找了半天也没办法解决,不知道为什么。

但是今天还是简单谈谈dotnetbar的基本应用吧,对于刚用这个控件的新手而言,各种控制,各种button,它们之间到底什么关系呢?相信这篇文章会给大家一个整体的感觉。具体项目呢?自己试呗?能用则用!

一ribbonControl

 this.ribbonPanel1.Controls.Add(this.ribbonBar1);

 this.ribbonTabItem1.Panel = this.ribbonPanel1;

this.ribbonControl1.Items.AddRange(newDevComponents.DotNetBar.BaseItem[] {

            this.ribbonTabItem1,

            this.ribbonTabItem2});

this.ribbonControl1.QuickToolbarItems.AddRange(new DevComponents.DotNetBar.BaseItem[]{

            this.office2007StartButton1,


RibbonBar里面可以有buttonItem

this.ribbonBar2.Items.AddRange(new BaseItem[] { this.buttonItem90, this.buttonItem101,this.buttonItem102, this.buttonItem103,this.buttonItem104, this.buttonItem105,this.buttonItem106, this.buttonItem107,this.buttonItem108 });

 Buttonitem可以有subitem

this.btnPipelineSpatialQuery.SubItems.AddRange(new BaseItem[] { this.buttonItem6, this.buttonItem7 });

二:ItemContainer

 this.itemContainer3.SubItems.AddRange(newDevComponents.DotNetBar.BaseItem[] {

            this.buttonItem2,

            this.buttonItem3,

            this.buttonItem4,

            this.buttonItem5,

            this.buttonItem6,

            this.buttonItem7});

 

this.itemContainer2.SubItems.AddRange(new DevComponents.DotNetBar.BaseItem[]{

            this.itemContainer3,

            this.galleryContainer1});

this.itemContainer1.SubItems.AddRange(new DevComponents.DotNetBar.BaseItem[]{

            this.itemContainer2,

            this.itemContainer4});

 

this.office2007StartButton1.SubItems.AddRange(new DevComponents.DotNetBar.BaseItem[]{

            this.itemContainer1});

this.galleryContainer1.SubItems.AddRange(new DevComponents.DotNetBar.BaseItem[]{

            this.labelItem8,

            this.buttonItem8,

            this.buttonItem9,

            this.buttonItem10,

            this.buttonItem11});

三:expandableSplitter

this.panelEx4.Dock = DockStyle.Fill;

   this.panelEx4.Controls.Add(this.panelEx5);

   this.panelEx5.Dock = DockStyle.Fill;

   this.panelEx4.Controls.Add(this.expandableSplitter2);

   this.expandableSplitter2.Dock = DockStyle.Bottom;

   this.panelEx4.Controls.Add(this.panelEx6);

   this.panelEx6.Dock = DockStyle.Bottom;

this.sideBar1.Dock = DockStyle.Left;

this.expandableSplitter1.ExpandableControl= this.sideBar1;

this.panelEx4.Dock = DockStyle.Fill;

this.panelEx4.Controls.Add(this.panelEx5);

this.panelEx5.Dock = DockStyle.Fill;

this.panelEx4.Controls.Add(this.expandableSplitter2);

this.expandableSplitter2.Dock = DockStyle.Bottom;

this.expandableSplitter2.ExpandableControl= this.panelEx6;

this.panelEx4.Controls.Add(this.panelEx6);

this.panelEx6.Dock = DockStyle.Bottom;

this.panelEx6.Visible = false;

四 : SideBar


this.sideBar1.Panels.AddRange(newBaseItem[]{this.sideBarPanelItem3,this.sideBarPanelItem4})

this.sideBarPanelItem4.SubItems.AddRange(newBaseItem[]{ this.controlContainerItem5});


this.controlContainerItem5.Control = this.panel1;

五.控件加载顺序的重要性

this.sideBar1.Dock = DockStyle.Left;

this.expandableSplitter1.ExpandableControl = this.sideBar1;

this.panelEx4.Dock = DockStyle.Fill;

顺序很重要,直接影响界面布局

五.DataGridViewX

  this.dataGridViewX1.AllowUserToAddRows= false;

this.dataGridViewX1.ColumnHeadersHeightSizeMode=DataGridViewColumnHeadersHeightSizeMode.AutoSize;

  this.dataGridViewX1.DefaultCellStyle= style3;

  this.dataGridViewX1.Dock = DockStyle.Fill;

  this.dataGridViewX1.GridColor = Color.FromArgb(0xd0, 0xd7, 0xe5);

  this.dataGridViewX1.Location = new Point(0, 5);

  this.dataGridViewX1.Name = "dataGridViewX1";

  this.dataGridViewX1.ReadOnly = true;

 this.dataGridViewX1.RowTemplate.Height =0x17;

  this.dataGridViewX1.Size = new Size(780,0x40);

  this.dataGridViewX1.TabIndex =13;

this.dataGridViewX1.MouseClick+=newMouseEventHandler(this.dataGridViewX1_MouseClick)

this.dataGridViewX1.MouseDoubleClick+=newMouseEventHandler(this.dataGridViewX1_MouseDoubleClick);

六.在sidebar里面放TreeView

1.      Sidebar里面先创建一个sidebarpanelItem

2.      在sidebarpanelitem里面再创建一个panelcontaineritem

3.      在将一个panelcontaineritem的controls属性设置为treeview

4.      后将treeview的dock属性设置成fill

5.      注意:在设计视图里面会发现,treeview占满了整个sidebar,但是在运行视图里面是没有问题,这个bug可以忽略

总结:

1.       个人感觉DotNetBar这个组件确实挺好用的,除了那些莫名奇妙的问题,个人用的是适用版的,可能正式购买过后这些问题就会都没了,希望大家都支持正版吧,毕竟大家挣点钱都不容易,最好的方式就是各挣各的钱。

2.       后续还会贴一个项目中实际用到DotnetBar做布局的项目,在里面再进一步谈谈DotNetBar的在实际项目中的完整应用。





http://chatgpt.dhexx.cn/article/f2mCIwwb.shtml

相关文章

dotnetbar-SuperTabControl禁止调整顺序

superTabCtl.ReorderTabsEnabled false; 禁止调整TAB顺序 superTabCtl.CloseButtonOnTabsAlwaysDisplayedfalse; 禁止x关闭按钮一直在TAB上显示 superTabCtl.CloseButtonOnTabsVisibletrue/false;关闭按钮是否可见 注意: superTabitem.CloseButtonVisibletru…

Visual Studio 2019 中使用 DotNetBar

1、下载并安装DotNetBarSetupTrial 2、在新建项目或者现有项目中进行引用,找到DotNetBar安装路径中需要用到的dll引用,引用路径正确是关键 3、在工具箱中添加选项卡,加载需要用到的控件 先在工具箱空白处添加选项卡,方便管理&am…

DotNetBar for WinForms使用教程:图表控件用户指南(一)

DotNetBar for WinForms是一个拥有89个组件的用户界面控件套包,用户可以使用Visual Studio 2005-2015轻松地创建专业的用户界面。十多年来DotNetBar帮助开发人员轻松地创建易用的专业Windows Forms (WinForms) 用户界面。DotNetBar是全世界第一个引入全功能Office 2…

c# 使用dotnetbar 控件绘制曲线图形

废话不说,直接上过程 加载dotnetbar库后,将chartcontrol控件拖动到界面上,选择line polt 增加一个按钮,绘制曲线功能 private void buttonX26_Click(object sender, EventArgs e) { CreateChartSeries1(); } public void CreateChart…

经典:DotNetBar Suite UI 7.9 for WPF Crack

创建专业的 WPF 应用程序 DotNetBar Suite for WPF 是超过 38 个本机 Windows Presentation Foundation 控件的工具箱,用于创建专业的 WPF 应用程序。 Office 2016 类样式添加到功能区、日程安排和其他控件... 我们痴迷于控制性能和像素级细节。我们很自豪地说&…

DotNetBar SuperGridControl控件

1.添加表头 sgc.PrimaryGrid.SelectionGranularity SelectionGranularity.Row;//点击选中一行DevComponents.DotNetBar.SuperGrid.GridColumn gc null;gc new DevComponents.DotNetBar.SuperGrid.GridColumn("ID");sgc.PrimaryGrid.Columns.Add(gc);gc new DevCo…

DotNetBar第三方控件详解

DotNetBar是一款性价比很强的界面控件,带有56个Windows Form 控件的工具箱,使开发人员可以轻而易举地创建出专业美观的Windows Form应用程序用户界面,控件全部采用C#编写,引入了全部Office 2007 style Ribbon控件、Office 2003 of…

C#界面控件DotNetBar使用详解

一般来说,运用传统的界面控件元素,合理设计布局,能够设计出比较中规中矩的标准界面;利用一些换肤的控件或者部分界面组件,能够设计出相对好看一些的界面效果,如以前很盛行的ActiveSkin、IrisSkin和DotNetSk…

DotNetBar 14.1.X 安装+源码=不错选择

DotNetBar官方版是一款功能强大的UI桌面控件套包,能为用户提供了海量的控件,能够完美兼容Visual Studio 2005-2019等版本,为用户的开发工作提供了帮助。软件提供了工具栏、滑动面板、功能区超级菜单等功能,满足用户的各种开发控件…

DotNetBar教程

DotNetBar是一组用于.NET Framework环境下的一组组件集,利用该组件集能够打造绚丽并且实用的应用程序界面,给开发人员提供极大的便利。关于DotNetBar,详情请参考其官方网站:http://www.devcomponents.com 该组件集目前最新版本是8…

DotNetBar 介绍

DotNetBar是一款带有56个Windows Form 控件的工具箱,使开发人员可以轻而易举地创建出专业美观的Windows Form应用程序用户界面,控件全部采用C#编写,引入了全部Office 2007 style Ribbon控件、Office 2003 office2010 样式、支持windows7,Wind…

怎么用电脑设置让wifi变快

1.单击“开始——运行”(也可用快捷键WinR)打开,输入gpedit.msc确定后即可打开“组策略对象编辑器” 2.展依次点击“计算机配置→管理模板→网络→QoS数据包计划程序” 1,单击“开始——运行”(也可用快捷键WinR&…

【wifi】一步提升无线网络上网速率

最近在做wifi芯片的干扰测试,测试项目包括同频干扰和邻频干扰。在实际测试中发现,同频干扰对无线网络的影响是相当大的,用chariot跑吞吐量,加两道干扰,没到干扰用chariot跑10条流,发现待测设备的吞吐量下降…

随身WiFi(棒子)折腾日记(不断更新完善...)

目录 随身WiFi(棒子)折腾日记(不断更新完善...)一、了解随身WiFi的版本情况二、确定需求剁手三、购买闭坑指南四、安装9008驱动五、系统备份1. MiKo备份2. 变砖拯救(利用之前的备份镜像)3. QPT 备份4. QCN&…

WIFI Direct/WIFI P2P

技术交流有兴趣请加: 音视频技术交流群:308601278 无线投屏技术交流群:582349005 本文可在找到相关详细内容 必捷网络|因必捷而简单 商务合作请至邮件marketingbijienetworks.com 上节说过了网卡的选型,之所以网卡的选型如此重要,主要是因为Mirac…

华为A1路由器设置虚拟服务器,华为a1路由器wifi定时加速功能的详细操作设置方法...

华为a1路由器怎么设置wifi定时加速功能呀。 很多新手不知道这款华为a1路由器不仅可以设置wifi限速,还能在“华为智能家居”APP上下载应用设置wifi按时加速,下面能哈小编将华为a1路由器wifi定时加速功能的详细操作设置方法分享一下,一起来看看…

全球WIFI功率(信号)最强的国家清单,无线WIFI调优

经常玩Merlin梅林或华硕路由器的朋友都知道,无线路由器有个国家地区选项,中文互联网中都在传说澳大利亚地区的无线信号最好,除了华硕这些全球品牌路由器厂商,还有网建Netgear、领势Linksys这些品牌也有调整路由器地区的功能&#…

提升Wi-Fi速率的方法有哪些

“ 上一篇文章以实例梳理和介绍了Wi-Fi的速率的情况,对比说明了真实速率和宣称速率的差别,这一篇文章将从技术的角度分析实际影响Wi-Fi传输速率的因素,以及对应的优化方法。” PHY(物理层)速率是一个理论极限速率&…

win10提高wifi速度

第一步:窗口键R打开 运行窗口 第二步:在窗口输入gpedit.msc ​ 如果没有打开,提示gpedit.msc找不到,按照以下做法;如果能打开直接继续第三步。 2.1:新建一个记事本, 2.2:然后在记事本…

vivo信号无服务器,vivo创新推出双WiFi网络加速功能,是否实用,聊胜于无!

原标题:vivo创新推出双WiFi网络加速功能,是否实用,聊胜于无! “极客谈科技”,全新视角、全新思路,伴你遨游神奇的科技世界。 近期,vivo公布了一项较为特殊的技术,双WiFi网络加速功能…