如下教程示范如何计算行布局,特定的表格单元编辑器,和格式化显示值。这个教程基于前一个文章
选择行显示
GridControl为所有字段生成行和绑定数据源,如果AutoGenerateColumns 属性选择AddNew。添加行到GridControl精确显示为特别的几行设置。在GridControl Quick Action 点击Generate Columns
在前一篇,我们使用Items Source Wizard.这个向导为所有数据源字段生成行和值。按照下面操作移除不需要的行:
1、选择行
2、在 Quick Actions 菜单里面按 Delete 键或者点击Delete按钮,删掉GridControl中的行:
3、选择GirdControl打开Quick Actions 菜单
4、设置AutoGenerateColumns 属性为 None,显示指定的行:
查阅帮助信息:Create Columns and Bind Them to Data Properties
改变行布局
填满GridControl 行,设置最佳(optimal)宽对于所有显示的行:
1、在GridControl Quick Actions 菜单设置AutoWidth,填充grid的行:
2、在TableView 属性窗口,对于所有行基于他们的单元格和头部内容,指定 TableView.BestFitModeOnSourceChange 计算最佳宽
查阅帮助信息:Move and Resize Columns
设置一个特殊编辑器
在GridControl使用特殊编辑器编辑单元格值。这个编辑类型依赖行内容。这个 CheckEdit 使用布尔值,DateEdit 对于日期,TextEdit 对于字符串和数字。可以同样定义一个自定义编辑器对于如下内容(例如 ComboBoxEdit):
1、添加Shippers集合到视图模型:
using DevExpress.Mvvm;
using DevExpress.Mvvm.DataAnnotations;
using DevExpress.Mvvm.Xpf;
using System.Collections.Generic;
using System.Linq;
using WPF_DataGrid_GetStarted.Models;namespace WPF_DataGrid_GetStarted.ViewModels {public class MainViewModel : ViewModelBase {NorthwindEntities _Context;IList<Order> _ItemsSource;// ...IList<Shipper> _Shippers;public IList<Shipper> Shippers {get {if (_Shippers == null && !DevExpress.Mvvm.ViewModelBase.IsInDesignMode) {_Context = new NorthwindEntities();_Shippers = _Context.Shippers.ToList();}return _Shippers;}}// ...}
}
2、生成解决方案,使Shippers集合显示在VS XAML设计器。
3、选择 Ship Via行和调用 Quick Actions 菜单。
4、分配 ComboBoxEditSettings 对象到 ColumnBase.EditSettings属性:
5、为 ComboBoxEditSettings 设置Shippers集合作为数据源:
6、设置 DisplayMember 属性到CompanyName 和 ValueMember属性到ShipperId:
查阅帮助信息:Assign Editors to Cells.
格式化显示值
设置GridControl 显示数据。如下例子格式显示运费数据:
1、设置运费行,调用 Quick Actions 菜单,选择 Create EditSettings:
这个GirdControl 分配TextEditSettings 对象到 ColumnBase.EditSettings属性。
2、打开Mask Editor窗口:
3、设置Mask type 中 Numeric 和在Mask中选择Currency 。
4、选择 Use mask as DisplayFormat 和点击OK:
查阅帮助信息Format Cell Values.