我是一个在WPF和更多的WPF数据农业领域的新手。我很习惯和表亲一起工作-- Windows中的DatagridView,但这是我第一次使用WPF的DatagridView,而且非常困难!
我在Vidual 2010中使用内置的数据源向导创建了一个数据集。在创建这个数据集之后,我使用了另一个内置的特性,它允许我自动生成一个数据集,它是预先绑定到这个数据集中的一个表,所以我可以将它放到窗口中。
现在,所有这些都做得很好,直到我谈到需要让用户编辑database的内容的部分,并通过回调将新的/更新的数据提交到数据库中的基础表。
我试过四处搜索,但大多数文章都过时了,有些文章对像我这样的新手来说没有意义。
一个消息来源说:
DataGrid在执行EditItem、CancelEdit或CommitEdit方法之前检查IEditableCollectionView视图的CanAddNew、CanCancelEdit和CanRemove属性。因此,如果由于某种原因,编辑似乎无法工作,请确保检查它是否能够编辑。
,但是Visual 11的自动生成特性为数据绑定源代码提供了以下内容
<Window.Resources>
<my:crimexDataSet x:Key="crimexDataSet" />
<CollectionViewSource x:Key="datapoolViewSource" Source="{Binding Path=datapool, Source={StaticResource crimexDataSet}}" />
</Window.Resources>那么,我如何从这类数据源转移到IEditableCollectionView类数据源,以便启用编辑呢?提前谢谢..。
发布于 2011-05-27 14:29:41
如果这不是一个生命周期短的应用程序,我将省去很多痛苦,学习MVVM ()模式。这是WPF和Silverlight世界中非常常见的模式。
基本上,您将创建一个专门设计为网格的数据源的类,以及您可能需要的窗口中的其他数据。
为了满足这一特殊需求,您可能会使用ObservableCollection作为绑定到网格的属性的类型。
在StackOverflow这里有很多关于MVVM的信息,可以在谷歌上找到,也可以在书中找到。如果您摸索这个模式,它确实可以使UI开发体验更少痛苦。
https://stackoverflow.com/questions/6104066
复制相似问题