彩票走势图

DevExpress WinForms中文教程:Data Grid - 如何在代码中处理列?

翻译|使用教程|编辑:龚雪|2024-10-23 13:47:32.200|阅读 17 次

概述:本文主要介绍如何在分配数据源时启用或禁用自动列生成等,欢迎下载最新版组件体验!

# 慧都年终大促·界面/图表报表/文档/IDE等千款热门软控件火热促销中 >>

相关链接:

在本教程中,您将学习如何在分配数据源时启用或禁用自动列生成,如何手动填充列集合和访问单个列。请注意,本教程的重点是在代码中完成这些任务。显然您也可以使用网格的集成设计器对话框和Visual Studio的属性网格来做同样的事情,这将在单独的教程中进行描述。

P.SDevExpress WinForms拥有180+组件和UI库,能为Windows Forms平台创建具有影响力的业务解决方案。DevExpress WinForms能完美构建流畅、美观且易于使用的应用程序,无论是Office风格的界面,还是分析处理大批量的业务数据,它都能轻松胜任!

获取DevExpress WinForms v24.1正式版下载

DevExpress技术交流群10:532598169      欢迎一起进群讨论

起点

应用程序最初包含一个网格控件,该控件没有任何列,也没有绑定到数据源。该项目连接到示例AdventureWorks数据库,您可以在DevExpress WinForms网格控件的数据源向导中看到它。

DevExpress WinForms中文教程图集
自动检索数据源字段

不要使用向导将网格绑定到数据,而是切换到代码视图,并在表单的构造函数中设置属性。

C#

gridControl.DataSource = dimProductBindingSource;

VB.NET

gridControl.DataSource = dimProductBindingSource

运行应用程序,查看是否为绑定数据源中的每个可用字段自动生成列。

DevExpress WinForms中文教程图集
禁用自动列生成功能

如果您只需要将控件绑定到数据,而不需要自动生成所有列,请设置属性设置为false。

C#

gridView1.OptionsBehavior.AutoPopulateColumns = false;
gridControl.DataSource = dimProductBindingSource;

VB.NET

gridView1.OptionsBehavior.AutoPopulateColumns = False
gridControl.DataSource = dimProductBindingSource

如果您现在运行这个应用,会再次看到一个空白的网格控件,尽管它有一个绑定的数据源。

手动填充列

网格视图提供了一种方法,可以删除以前创建的所有列,并为每个数据源字段创建一个列,这与您打开选项时看到的操作非常相似。

C#

gridView1.PopulateColumns();

VB.NET

gridView1.PopulateColumns()

运行应用程序来再次查看视图中的列。

修改列集合

所有网格控件列都是类实例,存储在View的集合中。您可以根据需要自由修改此集合,例如您可以删除为DealerPrice字段自动生成的列。

C#

gridView1.Columns.Remove(gridView1.Columns["DealerPrice"]);

VB.NET

gridView1.Columns.Remove(gridView1.Columns("DealerPrice"))

启动应用程序,确保该字段的列不再存在。

现在创建一个绑定到DealerPrice字段的新列。

C#

GridColumn myCol = gridView1.Columns.AddVisible("DealerPrice", "My Column");

VB.NET

Dim myCol As GridColumn = gridView1.Columns.AddVisible("DealerPrice", "My Column")

要将新创建的列移动到视图中的第一个位置,请将其属性设置为0。

C#

myCol.VisibleIndex = 0;

VB.NET

myCol.VisibleIndex = 0

运行应用程序来检查位置是否确实发生了变化,注意添加的列格式没有正确设置为显示货币符号,ListPrice列也是如此。

DevExpress WinForms中文教程图集

看看访问单个列的两种不同方式,一种是通过集合中的索引,因为您知道在代码中添加的列是最后一个;另一种是通过字段名,这就是访问ListPrice列的方式。设置列和属性来应用适当的格式化。

C#

gridView1.Columns[gridView1.Columns.Count - 1].DisplayFormat.FormatType = gridView1.Columns["ListPrice"].DisplayFormat.FormatType = DevExpress.Utils.FormatType.Numeric;
gridView1.Columns[gridView1.Columns.Count - 1].DisplayFormat.FormatString = gridView1.Columns["ListPrice"].DisplayFormat.FormatString = "C2";
DevExpress WinForms中文教程图集

最后,更改在代码中创建的列外观,您仍然可以修改添加到集合中的同一列对象。

C#

myCol.AppearanceHeader.ForeColor = Color.Crimson;
myCol.AppearanceCell.BackColor = Color.LightGoldenrodYellow;

VB.NET

myCol.AppearanceHeader.ForeColor = Color.Crimson
myCol.AppearanceCell.BackColor = Color.LightGoldenrodYellow

运行应用程序并查看仅应用于一个列的外观设置更改。

DevExpress WinForms中文教程图集

更多产品资讯及授权,欢迎“”!


DevExpress v24.1全新发布

标签:

本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@capbkgr.cn

文章转载自:慧都网

为你推荐

  • 推荐视频
  • 推荐活动
  • 推荐产品
  • 推荐文章
  • 慧都慧问
扫码咨询


添加微信 立即咨询

电话咨询

客服热线
023-68661681

TOP