当前位置: 首页 > news >正文

wpf devexpress post 更改数据库

这个教程示范如何使用GridControl编辑数据,和保存更改到数据库。这个教程基于前一个篇。

Items Source Wizard 当 CRUD (Create, Read, Update, Delete)  启动选项时添加Post data功能

Items Source Wizard 生成如下代码:

1、设置 TableView.ShowUpdateRowButtons 选项到OnCellEditorOpen。这个选项启动一个编辑模式允许用户  edit an entire row 和提交和更改所有的变更:

2、设置 TableView.NewItemRowPosition 属性到Top。 这个 New Item Row  允许用户添加新行到 GridControl:

 

3、创建如下命令在运行时生成,从方法和 Command 属性。 从 [MethodName]Command 生成命令名称。

ValidateRow 命令添加新列和保存变更到数据库:

[Command]
public void ValidateRow(RowValidationArgs args) {var item = (Order)args.Item;if (args.IsNewItem)_Context.Orders.Add(item);_Context.SaveChanges();
}

从数据库这个 ValidateRowDeletion 命令移除其他内容

[Command]
public void ValidateRowDeletion(ValidateRowDeletionArgs args) {var item = (Order)args.Items.Single();_Context.Orders.Remove(item);_Context.SaveChanges();
}

 DataSourceRefresh  命令拉取更改,从数据库更改grid 内容

[Command]
public void DataSourceRefresh(DataSourceRefreshArgs args) {_ItemsSource = null;_Context = null;RaisePropertyChanged(nameof(ItemsSource));
}

 TableView   属性束缚和生成命令:

<dxg:GridControl x:Name="grid" ItemsSource="{Binding Orders}"><!-- ... --><dxg:GridControl.View><dxg:TableView NewItemRowPosition="Top"ShowUpdateRowButtons="OnCellEditorOpen"ValidateRowCommand="{Binding ValidateRowCommand}"ValidateRowDeletionCommand="{Binding ValidateRowDeletionCommand}"DataSourceRefreshCommand="{Binding DataSourceRefreshCommand}"/></dxg:GridControl.View>
</dxg:GridControl>

从GridControl Delete 按键移除选择的列:

<dxg:GridControl.InputBindings><KeyBinding Command="{Binding View.Commands.DeleteFocusedRow, ElementName=grid}" Key="Delete"/>
</dxg:GridControl.InputBindings>

http://www.lryc.cn/news/236413.html

相关文章:

  • Ubuntu 18.04/20.04 LTS 操作系统设置静态DNS
  • VSCode使用MinGW中的go并支持CGO
  • tensor张量 ------ python特殊的数据结构
  • openai/chatgpt的api接口,各个模型的最大输入token一览表
  • Spark作业串行与并行提交job
  • HTTP HTTPS 独特的魅力
  • 【nlp】2.5(gpu version)人名分类器实战项目(对比RNN、LSTM、GRU模型)工程管理方式
  • 金蝶云星空对接打通旺店通·旗舰奇门采购退料单查询接口与创建货品档案接口
  • 在线识别二维码工具
  • CICD 持续集成与持续交付——git
  • 光纤的跳线和尾纤
  • SQL SERVER 2008安装教程
  • 好莱坞罢工事件!再次警醒人类重视AI监管,人工智能矛盾一触即发!
  • 深度学习系列54:使用 MMDETECTION 和 LABEL-STUDIO 进行半自动化目标检测标注
  • WSL2环境下Debian 12的Docker安装与配置
  • 11 月 11 日 ROS 学习笔记——ROS 架构及概念
  • BSN专网项目介绍:宁波市区块链新型基础设施“甬链”
  • 【数据库表及字段统计SQL】【mysql】【clickhouse】【oracle】
  • 如何分析伦敦金的价格走势预测?
  • 【设计原则篇】聊聊接口隔离原则
  • 自压缩llm 为 超长记忆之随机编码(非进制编码)
  • 苹果怎么互传照片?简单方法总结好了!
  • 【ARM Trace32(劳特巴赫) 使用介绍 2.1 -- TRACE32 Practice 脚本 cmm 脚本学习】
  • 学习指南:如何快速上手媒体生态一致体验开发
  • 037、目标检测-算法速览
  • 【开发流程】持续集成、持续交付、持续部署
  • Linux——编译器gcc/g++、调试器gdb以及自动化构建工具makefilemake详解
  • Android registerForActivityResults使用详解以及实现原理
  • 模拟实现一个Linux中的简单版shell
  • 扩散模型实战(十):Stable Diffusion文本条件生成图像大模型