ejemplo c# wpf datagrid mvvm

c# - ejemplo - datagrid xaml wpf



WPF datagrid ¿permite al usuario agregar filas? (3)

Asegúrese de que sus objetos en ObeservableCollection tengan un constructor sin parámetros predeterminado.

Me gustaría que mi WPF Datagrid, que está vinculada a mi colección observable, tenga la fila en blanco en la parte inferior para que el usuario pueda agregar más información. He vinculado con éxito los datos, es decir, puedo verlos.

¿Por qué no se muestra la "nueva" fila en blanco? Aquí está mi declaración xaml:

<UserControl.Resources> <CollectionViewSource x:Key="MyItems" Source="{Binding Path=AllItems}"> </CollectionViewSource> </UserControl.Resource> <my:DataGrid HorizontalAlignment="Stretch" AutoGenerateColumns="True" SelectionUnit="FullRow" CanUserAddRows="True" CanUserDeleteRows="True" DataContext="{StaticResource MyItems}" ItemsSource="{Binding}">

PD: estoy usando la implementación de MVVM de Josh Smith . También he leído algunas posts SO sobre el tema y they me han helped .

Gracias por adelantado.

Actualización 2010-01-14:

Cuando se produce el evento de carga usercontrol, "CanUserAdddRows" es falso. Sospecho que tiene algo que ver con las condiciones enumeradas here .


Encontrado el problema Mi constructor en el objeto que es parte de mi ObservableCollection no fue declarado público.

* Golpea la cabeza *

Gracias por tu tiempo.


La nueva fila en blanco dependerá si la colección que está vinculando implementa IEditableCollectionView. mira here Dicho esto, he encontrado que a veces funciona bien y otras veces inexplicablemente parece que no, pero el IEditableCollectionView es un comienzo