devexpress winform用法

合集下载

DevExpressWinForm控件汉化方法

DevExpressWinForm控件汉化方法

DevExpressWinForm控件汉化⽅法使⽤DevExpress控件开发时,汉化⼀直是⼀个很纠结的问题,各种⽅法均存在很多不⾜,在此不作评论。

现将本⼈实际使⽤中找到的⽅法提出共享,多提宝贵意见。

⼀、本地化对象。

DevExpress的⽂档中列出的是14个。

Product Localizer Class Resource String EnumerationXtraBars BarLocalizer BarStringXtraCharts ChartLocalizer ChartStringIdXtraEditors Localizer StringIdXtraGauges GaugeCoreLocalizer GaugeCoreStringIdXtraGrid GridLocalizer GridStringIdXtraLayoutControl LayoutLocalizer LayoutStringIdXtraNavBar NavBarLocalizer NavBarStringIdXtraPivotGrid PivotGridLocalizer PivotGridStringIdXtraPrinting PreviewLocalizer PreviewStringIdXtraReports ReportLocalizer ReportStringIdXtraScheduler SchedulerLocalizer SchedulerStringIdXtraSpellChecker SpellCheckerLocalizer SpellCheckerStringIdXtraTreeList TreeListLocalizer TreeListStringIdXtraVerticalGrid VGridLocalizer VGridStringId另外还有:DevExpress.Accessibility.AccLocalizer AccStringIdDevExpress.XtraRichEdit.Localization.XtraRichEditLocalizer XtraRichEditStringIdDevExpress.XtraWizard.Localization.WizardLocalizer WizardStringIdDevExpress.XtraScheduler.Localization.SchedulerExtensionsLocalizerSchedulerExtensionsStringIdDevExpress.XtraRichEdit.Localization.RichEditExtensionsLocalizer RichEditExtensionsStringId⼆、资源字符串枚举。

在DevExpress程序中使用Winform分页控件直接录入数据并保存

在DevExpress程序中使用Winform分页控件直接录入数据并保存

在DevExpress程序中使⽤Winform分页控件直接录⼊数据并保存⼀般情况下,我们都倾向于使⽤⼀个组织⽐较好的独⽴界⾯来录⼊或者展⽰相关的数据,这样处理⽐较规范,也⽅便显⽰⽐较复杂的数据。

不过在⼀些情况下,我们也可能需要直接在GridView表格上直接录⼊或者修改数据,这种对于字段⽐较少,⽽且内容相对⽐较简单的情况下,效率是⽐较⾼的⼀种输⼊⽅式。

本篇随笔主要介绍在DevExpress程序中使⽤GridView直接录⼊数据并保存的实现,以及使⽤Winform分页控件来进⾏数据直接录⼊的实现操作。

1、在GridView上展⽰数据在GridView上展⽰数据,只需要绑定数据源给对应的GridControl控件即可,⽐较简单,可以绑定的数据格式也是很多,可以是DataTable,也可以⽀持IEnumerable格式的IList<T>集合对象等等,在我的框架中,倾向于使⽤IList<T>这种实体类集合的⽅式。

在⽹上⼤多数例⼦,绑定的数据源多数采⽤的是基于DataTable的⽅式,这种⽅式显⽰的数据受制于不同数据库的特点,字段可能⼤⼩写不⼀样,⽽且DevExpress操作⾏列的字段是⼤⼩写敏感的,因此如果你要字段名获取值的时候,传⼊的字段名⼀定是要⼤⼩写⼀致,因此在数据库不同的时候,如Oracle查询到的字段全部是⼤写的,SQLServer则是混合模式的(可以是Pascal,也可以是⼤写、⼩写)。

采⽤实体类集合对于框架层次的操作有很多好处,可以强类型,⽽且不受具体数据库的影响,所有交互均通过实体类或者其集合进⾏处理,相对来说有很⼤的优势。

⼀般情况下,对实体类的数据源,我们可以通过下⾯的⽅式进⾏数据绑定(使⽤分页控件的数据绑定⽅式)。

List<DictDataInfo> list = BLLFactory<DictData>.Instance.FindWithPager(condition, this.winGridViewPager1.PagerInfo);this.winGridViewPager1.DataSource = list;如果需要在GridView上对记录进⾏新增修改的,也就是需要存储绑定数据的状态的,那么就不能直接使⽤List<T>集合,⽽需要使⽤其BindingList<T>的集合,同样BindingList<T>实现了IList<T>接⼝,我们可以通过构造函数new BindingList<T>(list)⽅式进⾏类型转换,然后重新绑定到数据源即可。

DevExpress.Winform之更换主题-544904950的日志-网易博客

DevExpress.Winform之更换主题-544904950的日志-网易博客

DevExpress.Winform之更换主题-544904950的⽇志-⽹易博客DevExpress.Winform之更换主题Dev控件 2009-12-31 11:05:25 阅读440 评论0 字号:⼤中⼩订阅1、准备当新建“Form”时,选择DevExpress Form为模板,就可以应⽤DevExpress的主题了。

此时,From继承的是“DevExpress.XtraEditors.XtraForm”。

默认情况下,系统主题有:CaramelMoney TwinsLilianThe Asphalt WorldiMaginaryBlackBlueDevExpress提供了更多的主题,我们如果应⽤的话,必须添加以下引⽤:DevExpress..OfficeSkins.v8.1;DevExpress.BonusSkins.v8.1;除此之外,必须在“Program.cs”⽂件在添加如下代码:erSkins.BonusSkins.Register();erSkins.OfficeSkins.Register();Application.EnableVisualStyles();Application.SetCompatibleTextRenderingDefault(false);if (!DevExpress.Skins.SkinManager.AllowFormSkins){DevExpress.Skins.SkinManager.EnableFormSkins();}Application.Run(new MainForm());其中“OfficeSkins”中的主题有:Office 2007 BlueOffice 2007 BlackOffice 2007 SilverOffice 2007 GreenOffice 2007 Pink“BonusSkins”的主题有:CoffeeLiquid SkyLondon Liquid SkyGlass OceansStardustXmas 2008 BlueValentineMcSkin(注:本⼈DevExpress为v8.1版本)2、添加更换⽪肤菜单项通过“foreach(SkinContainer cnt in SkinManager.Default.Skins){}”可以获取现有所有主题⽪肤名称,可以把获取的主题添加到菜单上,让⽤户选择⾃⼰喜爱的主题样式。

DevExpress控件运用

DevExpress控件运用

DefaultLookAndFeel 皮肤控件
5
3.BarManager 、NavBarControl
BarManager 同时设置了菜单栏,工具栏,状态栏 NavBarControl 设置选项栏 (右键Add Group 、Add Item)
6
3.RibbonControl
适用于菜单栏、工具栏的分组设置 通过属性Visible设置相应栏位的显示/隐藏
绑定控件到 集合类中的数据 List<ClassName> list = new List<ClassName>(); 。。。 gridControl1.DataSource = list; gridView1.Columns[0].FieldName = “Id”;// Id 为class 封装的字段 gridView1.Columns[0].Caption = "元素ID";
5表示当前是第五条记录,12表示总记录条数 OptionsBehavior Editable/ReadOnly 不可编辑状态
12
5. GridControl
LayoutView.OptionsCarouselMode 属性,包括了椭圆的螺旋角和转动角:
13
5.GridControl
CardView
5.GridControl
代码操作如下:
// obtaining the main View and clearing its bands collection BandedGridView View = gridControl1.MainView as BandedGridView; view.Bands.Clear();
// creating the bands layout GridBand bandGeneral = View.Bands.Add("General Info"); GridBand bandTechnical = View.Bands.Add("Technical Info"); GridBand bandEngine = bandTechnical.Children.Add("Engine Info"); GridBand bandTransmission = bandTechnical.Children.Add("Transmission Info"); // assigning columns to bands colTrademark.OwnerBand = bandGeneral; colModel.OwnerBand = bandGeneral; colLiter.OwnerBand = bandEngine; colCylinders.OwnerBand = bandEngine; colSpeedCount.OwnerBand = bandTransmission; colTransmission.OwnerBand = bandTransmission;

devexpress winform treemap用法

devexpress winform treemap用法

devexpress winform treemap用法
DevExpress WinForms 提供了许多强大的控件,其中包括TreeMap 控件。

TreeMap 控件可以用于显示分层数据,并以视觉上引人注目的方式呈现层次结构。

以下是一些使用DevExpress TreeMap 控件的示例和说明:
1. 添加TreeMap 控件
首先,将TreeMap 控件从工具箱拖放到窗体上。

可以在设计视图中使用“拖放”方法或通过代码创建TreeMap 控件实例。

2. 配置TreeMap 控件
在属性窗口中配置TreeMap 控件的属性。

可以设置控件的大小、颜色、字体等。

还可以通过设置TreeMapNode 的属性来定义每个节点的外观和行为。

3. 数据绑定
将数据源绑定到TreeMap 控件。

可以使用BindingManager 将数据源绑定到TreeMap 控件。

通过设置DataSource 属性来指定数据源。

4. 自定义节点样式
可以使用自定义节点样式来定义每个节点的外观。

可以在代码中为每个节点设置样式,也可以在设计视图中使用“属性”窗口来设置样式。

5. 交互操作
TreeMap 控件支持许多交互操作,例如单击节点以选择它,展开和折叠节点以显示或隐藏其子节点等。

可以使用代码或设计视图来处理这些交互操作。

总之,DevExpress TreeMap 控件是一个功能强大的工具,可用于在Windows Forms 应用程序中显示分层数据。

通过适当配置和自定义,可以使其与应用程序的整体设计风格相匹配,并提供出色的用户体验。

1。

devexpress winform 项目开发实例

devexpress winform 项目开发实例

DevExpress WinForms 提供了一套丰富的控件,用于创建具有专业外观和感觉的Windows Forms 应用程序。

以下是一个简单的DevExpress WinForms 项目开发实例,它演示了如何使用DevExpress WinForms 控件来创建一个简单的窗口,并显示一些数据。

首先,确保你已经安装了DevExpress WinForms 控件库。

你可以从DevExpress 官网下载并安装它。

步骤1: 创建一个新的Windows Forms 项目打开Visual Studio,选择“创建新项目”,选择“Windows Forms 应用(支持.NET Framework)”模板,并给你的项目命名。

步骤2: 从工具箱拖放控件到窗体上在工具箱中找到DevExpress WinForms 控件,例如dxGrid、dxBarManager、dxTreeList 等。

将这些控件拖放到窗体上。

步骤3: 设置控件属性在属性窗口中设置控件的属性,例如Text、Dock、Anchor 等。

步骤4: 编写代码以填充数据和事件处理程序在代码文件中编写代码以填充数据和事件处理程序。

例如,你可以使用以下代码填充dxGrid 控件:// 假设你有一个名为dataTable 的DataTable 对象,它包含一些数据dataGridView1.DataSource = dataTable;// 为数据表中的列设置列头文本dataGridView1.Columns["column1"].Caption = "列1";dataGridView1.Columns["column2"].Caption = "列2";dataGridView1.Columns["column3"].Caption = "列3";// 如果需要处理某些事件,例如单击事件,可以添加事件处理程序dataGridView1.KeyDown += newKeyEventHandler(dataGridView1_KeyDown);步骤5: 运行和测试应用程序点击“开始”或“运行”按钮来运行应用程序,检查用户界面是否符合预期,以及应用程序是否按预期工作。

WinForm-DevExpress控件-TreeList-树形框菜单的使用

WinForm-DevExpress控件-TreeList-树形框菜单的使用

WinForm-DevExpress控件-TreeList-树形框菜单的使⽤环境声明:使⽤控件:DevExpress16.2开发语⾔:C#开发⼯具:VS2017开发框架:WinForm#通过绑定数据List<Data>⽅式来达到树形框显⽰1.绑定数据格式public class Data{public int ID { get; set; } //数据ID,主键public string Name { get; set; } //数据名称public int GroupId { get; set; } //分组ID,当前位于树形菜单第⼏级的意思public int ParentID { get; set; } //⽗标签ID,⽗标签的数据ID}2.添加绑定列,设置绑定数据名称TreeList >> Run Designer >> Add Column,设置其绑定字段为数据名称:“Name”3.设置主键绑定数据名称TreeList >> KeyFieldName=“Id”4.设置⽗标签绑定数据名称TreeList >> ParentFieldName=“Parent”#树形框不可编辑treeList.OptionsBehavior.Editable = true;#添加节点(绑定对象模式)Data.Add(new DTO.BookList() { id = 主键, GroupId = 0, Name = "新增节点", ParentID = 0 });this.treeList.DataSource = Data;this.treeList.RefreshDataSource();#使添加的选中节点进⼊编辑状态foreach (TreeListNode node in treeList.Nodes) {if ((int)node.GetValue("id")==主键) {treeList.FocusedNode = node; //设置选中焦点到节点treeList.OptionsBehavior.Editable = true;//开启控件编辑状态treeList.ShowEditor();//进⼊编辑模式break;}}#离开编辑触发事件treeList_HiddenEditorprivate void treeList_HiddenEditor(object sender, EventArgs e){Console.WriteLine("离开编辑当前节点,可以在这⾥做⼀些后续动作");}PS:未完待续。

DevexpressWinFormTreeList的三种数据绑定方式(DataSource。。。

DevexpressWinFormTreeList的三种数据绑定方式(DataSource。。。

DevexpressWinFormTreeList的三种数据绑定⽅式(DataSource。

第⼀种:DataSource绑定,这种绑定⽅式需要设置TreeList的ParentFieldName和KeyFieldName两个属性,这⾥需要注意的是KeyFieldName 的值必须是唯⼀的。

代码如下:private void Form1_Load(object sender, EventArgs e){try{//构建⼀个DataTable数据源DataTable table = new DataTable();table.Columns.Add("parentId");table.Columns.Add("Id");table.Columns.Add("parentName");table.Columns.Add("Name");DataRow row = table.NewRow();row["parentId"] = "";row["Id"] = "*";row["Name"] = "所有颜⾊";table.Rows.Add(row);row = table.NewRow();row["parentId"] = "*";row["Id"] = "1";row["Name"] = "红⾊";table.Rows.Add(row);row = table.NewRow();row["parentId"] = "*";row["Id"] = "2";row["Name"] = "黄⾊";table.Rows.Add(row);row = table.NewRow();row["parentId"] = "*";row["Id"] = "3";row["Name"] = "绿⾊";table.Rows.Add(row);row = table.NewRow();row["parentId"] = "1";row["Id"] = "01";row["Name"] = "粉红⾊";table.Rows.Add(row);row = table.NewRow();row["parentId"] = "2";row["Id"] = "02";row["Name"] = "鹅黄⾊";table.Rows.Add(row);treeList1.ParentFieldName = "parentId";treeList1.KeyFieldName = "Id";treeList1.DataSource = table;treeList1.ExpandAll();}catch (Exception ex){MessageBox.Show(ex.Message);}}private void treeList1_BeforeCheckNode(object sender, DevExpress.XtraTreeList.CheckNodeEventArgs e){e.State = (e.PrevState == CheckState.Checked ? CheckState.Unchecked : CheckState.Checked);}private void treeList1_AfterCheckNode(object sender, DevExpress.XtraTreeList.NodeEventArgs e){try{SetCheckedChildNodes(e.Node, e.Node.CheckState);SetCheckedParentNodes(e.Node, e.Node.CheckState);}catch (Exception ex){MessageBox.Show(ex.Message);}}///<summary>///设置⼦节点的状态///</summary>///<param name="node"></param>///<param name="check"></param>private void SetCheckedChildNodes(TreeListNode node, CheckState check){for (int i = 0; i < node.Nodes.Count; i++){node.Nodes[i].CheckState = check;SetCheckedChildNodes(node.Nodes[i], check);}}///<summary>///设置⽗节点的状态///</summary>///<param name="node"></param>///<param name="check"></param>private void SetCheckedParentNodes(TreeListNode node, CheckState check){if (node.ParentNode != null){bool b = false;CheckState state;for (int i = 0; i < node.ParentNode.Nodes.Count; i++){state = (CheckState)node.ParentNode.Nodes[i].CheckState;if (!check.Equals(state)){b = !b;break;}}node.ParentNode.CheckState = b ? CheckState.Checked : check;SetCheckedParentNodes(node.ParentNode, check);}}运⾏效果图:第⼆种:AppendNode添加节点代码如下:private void LoadTree(){//清空节点treeList1.BeginUnboundLoad();treeList1.ClearNodes();arrayList = new List<TreeListNode>();//绑定部位树树的第⼀层TreeListNode Node = treeList1.Nodes.Add(new object[] { "所有颜⾊", "*"});Node.Tag = "*";arrayList.Add(Node);//绑定第⼆层DataSet ds = SqlHelper.Query(@"select ctc.colorId as ParentNodeID,ctc.childcolorId as NodeID, s as NodeNamefrom C_colorTocolor ctc(nolock)inner join C_color cc(nolock) on ctc.childcolorId=cc.id");if (ds != null && ds.Tables.Count > 0){table = ds.Tables[0];DataRow[] rows = table.Select("ParentNodeID='*'");foreach (DataRow row in rows){TreeListNode tn = treeList1.AppendNode(new object[] { row["NodeName"].ToString(), row["NodeID"].ToString() }, Node.Id); tn.Tag = row["NodeID"].ToString();arrayList.Add(tn);BindNode(row["NodeID"].ToString(), tn);}}treeList1.EndUnboundLoad();treeList1.ExpandAll();}private void BindNode(string nodeId, TreeListNode tn){DataRow[] rows = table.Select("ParentNodeID='" + nodeId + "'");foreach (DataRow row in rows){TreeListNode tns = treeList1.AppendNode(new object[] { row["NodeName"].ToString(), row["NodeID"].ToString()}, tn.Id);tns.Tag = row["NodeID"].ToString();arrayList.Add(tns);BindNode(row["NodeID"].ToString(), tns);}}private void Form2_Load(object sender, EventArgs e){//绑定树LoadTree();}运⾏效果图:第三种:VirtualTreeGetChildNodes虚拟树加载。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

devexpress winform用法
DevExpress是一家软件开发工具和组件供应商,他们提供了
一套强大的WinForms控件,帮助开发人员更快、更方便地创
建Windows桌面应用程序。

以下是一些DevExpress WinForms控件的常见用法:
1. GridControl(网格控件):GridControl是一个用于显示和编辑表格数据的功能强大的控件。

你可以使用它来显示数据库的数据,进行快速过滤、排序和分组,还可以对数据做出修改。

2. XtraEditors(编辑器控件):DevExpress提供了一系列编辑
器控件,用于创建各种输入界面。

比如TextEdit(文本输入)、ComboBoxEdit(下拉框选择)、DateEdit(日期选择)等。


可以方便地为这些控件设置各种属性和样式。

3. XtraCharts(图表控件):DevExpress的图表控件支持多种
图表类型和布局,你可以使用它创建各种数据统计和可视化报表。

4. XtraReports(报表控件):XtraReports是一个强大的报表生成引擎,你可以使用它创建各种复杂的打印和预览报表。

5. XtraNavBar(导航栏控件):XtraNavBar是一个导航栏控件,可以帮助你创建易于使用的导航界面。

这只是DevExpress WinForms控件中的一小部分,还有很多其
他控件可以帮助你创建更丰富和交互性的应用程序。

在使用DevExpress控件时,你可以使用设计器或代码来配置和定制
控件的外观和行为。

同时,DevExpress还提供了丰富的文档、示例和支持社区,方便开发人员学习和解决问题。

相关文档
最新文档