界面控件DevExpress WPF中文教程:Data Grid - 虚拟源限制

DevExpress WPF拥有120+个控件和库,将帮助您交付满足甚至超出企业需求的高性能业务应用程序。通过DevExpress WPF能创建有着强大互动功能的XAML基础应用程序,这些应用程序专注于当代客户的需求和构建未来新一代支持触摸的解决方案。 无论是Office办公软件的衍伸产品,还是以数据为中心的商业智能产品,都能通过DevExpress WPF控件来实现。

绑定到虚拟源的GridControl只请求顶级记录或特定页面,您可以指定支持哪些数据操作,以防止最终用户使用非最优查询使数据库过载,GridControl隐藏了不支持操作的UI元素。

注意不支持TreeListView。

获取DevExpress WPF v25.1正式版下载

排序

排序被禁用。

要启用排序:

  1. 使用FetchEventArgsBase.SortOrder属性获取考虑GridControl排序的行。

  2. ColumnBase.AllowSorting属性设置为true来允许按特定列排序(忽略DataViewBase.AllowSorting属性)。

您最初只能按单列排序,将GridViewBase.AllowGroupingSortingBySingleColumnOnly属性设置为false来允许按多列排序。

过滤

过滤功能被禁用。

要启用过滤功能:

  1. 使用FetchEventArgsBase.Filter属性获取考虑GridControl过滤的行。

  2. 使用以下属性来指定GridControl列支持的过滤器:

搜索

已禁用搜索。

请注意,虚拟源不支持使用搜索面板突出显示文本。该元素允许最终用户通过按F3或内置导航按钮在找到的值之间进行迭代,这可能导致在使用虚拟源时加载大量行。

总摘要

总摘要已被禁用。

要显示摘要:

  1. 处理InfiniteAsyncSource.GetTotalSummaries事件来获取总摘要。

  2. 使用GridControl.TotalSummary属性指定GridControl应该显示的摘要信息总数。

使用ColumnBase.AllowedTotalSummariesTableView.AllowCountTotalSummary属性来指定允许的摘要类型,并允许用户显示摘要。

注意:不支持选择摘要。

数据编辑

"数据编辑"功能被禁用。

虚拟源仅支持在Edit Entire Row模式下进行编辑:

  1. 对于用户可以编辑的列,将ColumnBaseAllowEditing属性设置为true。

  2. 设置TableView.ShowUpdateRowButtons属性为OnCellEditorOpen / OnCellValueChange 来启用Edit Entire Row模式。

  3. 处理GridViewBase.ValidateRow事件,并同步或异步地将更改保存到底层数据源(数据库)。

要异步保存更改,将GridRowValidationEventArgs.UpdateRowResult属性设置为保存更改的任务。

Xaml

XML 复制代码
<dxg:GridControl x:Name="grid">
<dxg:GridControl.Columns>
<dxg:GridColumn FieldName="Subject" IsSmart="True" AllowEditing="true"/>
<dxg:GridColumn FieldName="User" IsSmart="True" AllowEditing="true"/>
<dxg:GridColumn FieldName="Created" IsSmart="True" AllowEditing="true"/>
<dxg:GridColumn FieldName="Votes" IsSmart="True" AllowEditing="true"/>
<dxg:GridColumn FieldName="Priority" IsSmart="True" AllowEditing="true"/>
</dxg:GridControl.Columns>
<dxg:GridControl.View>
<dxg:TableView ValidateRow="TableView_ValidateRow" ShowUpdateRowButtons="OnCellValueChange" />
</dxg:GridControl.View>
</dxg:GridControl>

C#

cs 复制代码
private void TableView_ValidateRow(object sender, GridRowValidationEventArgs e) {
e.UpdateRowResult = Task.Run(() => {
IssuesService.UpdateRow(e.Row as IssueData);
});
}

VB.NET

vbnet 复制代码
Private Sub TableView_ValidateRow(ByVal sender As Object, ByVal e As GridRowValidationEventArgs)
e.UpdateRowResult = Task.Run(Function()
IssuesService.UpdateRow(TryCast(e.Row, IssueData))
End Function)
End Sub
未绑定列和已绑定列
  • 您可以创建一个未绑定列,并使用表达式编辑器编辑ColumnBase.UnboundExpression属性。
  • 可以使用Binding属性创建绑定到数据的列。
  • 不能将数据整形操作(排序、分组、汇总)应用于未绑定列或指定了Binding属性的列。

如果必须在服务器上按多个列计算值,请使用VirtualSourceBase.CustomProperties属性指定自定义PropertyDescriptors。

条件格式
  • 只能使用FormatCondition条件格式。
打印和导出
数据导航器
  • 您可以在Data Navigator中使用导航按钮,Remove, Add, Edit按钮被禁用。
拖放
  • 默认情况下,拖放功能是禁用的,您可以处理自定义事件来实现自定义拖放。
选择
自适应
相关推荐
卷毛迷你猪2 天前
快速实验篇(A11)数据集成与多维分析:从单实验产出到跨实验宽表
hive·hadoop
samble3 天前
从零搭建灌装监控系统(四):深色主题与样式系统,ResourceDictionary 统一管理
c#·wpf·mvvm·样式·工业控制
_Jonas3 天前
.net framework开发环境正式环境配置文件的切换
.net·wpf
卷毛迷你猪3 天前
快速实验篇(A10)短序列上 SPI 的失效机制
hadoop
Francek Chen3 天前
【大数据处理与分析】数据仓库Hive:04 数据仓库Hive概述
大数据·数据仓库·hive·hadoop·分布式
Gl�ria4 天前
Hadoop/YARN 集群缩容:下线DN节点
大数据·hadoop·分布式
计算机源码社4 天前
基于大数据技术的台北市住宅价格影响因素挖掘与可视化分析-基于Python与Hadoop的台北市住宅价格数据仓库构建与可视化
大数据·hadoop·python·数据分析·spark·毕业设计·数据可视化
计算机源码社4 天前
基于Hadoop+Spark的乳腺癌病理数据可视化分析系统 基于K-Means聚类与PCA降维的乳腺癌形态特征分析系统
大数据·hadoop·python·数据分析·spark·毕业设计·数据可视化
dalong105 天前
WPF:Modbus 状态监控
wpf·modbus
卷毛迷你猪5 天前
快速实验篇(A9-2)Python vs MapReduce:小批量任务的工具选择
大数据·hadoop