WPF数据网格,创建后可以选择或关注行

本文关键字:选择 数据网 数据 网格 创建 WPF | 更新日期: 2023-09-27 18:07:20

正如问题所说的……

我希望创建的行在创建时被选中,因为用户很可能想要对创建后的行做一些事情。

我通常通过ViewModel使用可观察集合创建一行,一旦添加了集合,则刷新WPF DataGrid的ItemSource。

如果有必要,我会把代码贴上去。

然而,如果有解决方案,它可以在DataGrid视图中,或者在MVVM中。我真的不在乎。

Thanks for the help

WPF数据网格,创建后可以选择或关注行

首先,您需要将DataGrid的SelectedItem绑定到模型中的一个属性。我不记得SelectedItem的默认绑定模式是否为2路,如果不是,在你的绑定中指定2路,这样你就可以在你的模型中设置它的值。

当添加新记录时,您需要存储对主键值的引用,然后在刷新ItemSource之后,您将需要定位与存储的主键值匹配的对象。

例如,如果你有一个整数主键:

int recordId = [value of primary key in new record]
Records = [select records from database]
GridItemSource = Records;
SelectedItem = Records.Where(x => x.RecordId == recordId).FirstOrDefault();

如果你使用的主键由一个标识列组成,你需要在插入记录后获取新的id。