我想创建可编辑的 DataGrid,其单元格可以是只读的,也可以是可编辑的(通过 DoubleClicking)... 我想将所有编辑的单元格保存到数据库(通过 Entity Framework )...
然后在某些列中,我需要显示组合框而不是文本字段。
我该如何实现这一目标?
最佳答案
取决于您是否使用 MVVM。
无论哪种方式,您都需要确定要如何保存。有保存按钮吗?或者编辑完成后立即保存。 (最后一个对你的数据库来说很糟糕,但取决于你)
编辑会产生一个您可以捕获的事件。单击“保存”按钮也会产生一个事件。
保存按钮 因此,假设您想要一个保存按钮。
那么,当按钮单击事件发生时,您将调用代码来保存到数据库中。在不知道你的数据库的情况下,我真的不能告诉你更多,除了这应该被分配到不同的线程,这样它就不会发生在 UI 线程上。查看 Task.Run 了解更多信息。
编辑时保存 基本上与上面相同,但您最终会更频繁地与数据库交谈。每次按键确实如此,这就是为什么它对你的数据库来说更困难。 基本上,您捕获按键或按键事件,然后将信息保存到数据库中。
关于wpf - 如何编辑WPF GridView并将其保存到数据库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41332132/