DevExpress WPF使用技巧教程

要激活Edit Entire Row模式,请使用TableView.ShowUpdateRowButtons / TreeListView.ShowUpdateRowButtons 属性。

要发布所做的更改,请单击Update按钮;如果单击Cancel按钮,更改将被放弃。

DevExpress WPF使用技巧教程

在示例中,Data Grid绑定到实体框架:

public MainWindow() {InitializeComponent();var context = new IssuesContext();grid.ItemsSource = context.Issues.ToArray();}public class IssuesContext : DbContext {// ...}

当要更改 格值时,仅更改内存中的副本,而不更改数据库中的实际数据。若要保存更改并拦截可能的数据库错误,请处理GridViewBase.ValidateRow事件,并在DataContext上显式调用SaveChanges:

<dxg:TableView ShowUpdateRowButtons="OnCellEditorOpen"ValidateRow="TableView_ValidateRow" />void TableView_ValidateRow(object sender, GridRowValidationEventArgs e) {var issue = (Issue)e.Row;using(var context = new IssuesContext()) {var result = context.Issues.SingleOrDefault(b => b.Id == issue.Id);if(result != null) {result.Subject = issue.Subject;result.Priority = issue.Priority;result.Votes = issue.Votes;result.Priority = issue.Priority;context.SaveChanges();}}}

示例中的数据库不允许您保存带有空主题的行:

protected override void OnModelCreating(DbModelBuilder modelBuilder) {base.OnModelCreating(modelBuilder);modelBuilder.Entity<Issue>().Property(x => x.Subject).IsRequired();}

如果您尝试指定一个空主题,则Data Grid将允许您更正值或单击Cancel按钮以返回以前的值。


DevExpress v19.2全新发布,欢迎下载最新版体验哦~

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

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2020年1月15日
下一篇 2020年1月15日

相关推荐

发表回复

登录后才能评论