Tengo un WGD DataGrid con algunos datos. Puede agregar filas a través de una ventana separada. El DataContext es el mismo, un objeto LINQ-to-SQL. La vinculación también es la misma, yo ato la propiedad "ItemsSource" a una tabla.Cómo actualizar un WGD DataGrid?
En la otra ventana, cuando el usuario hace clic en "Guardar", creo una fila programáticamente y la agrego usando "InsertOnSubmit". Después de eso utilizo el método "SubmitChanges" de DataContext.
Mi problema es que DataGrid no se actualiza. Si reinicio la aplicación, puedo ver la nueva fila, por lo que está en la base de datos, pero no pude encontrar una manera de actualizar DataGrid.
Hasta ahora he intentado usar "UpdateTarget" en BindingExpression de DataGrid, pero no sirvió de nada. También probé "dataGrid.Items.Refresh()" - el mismo resultado. ¿Cómo puedo arreglar esto?
Su solución obviamente está funcionando. Solo pensé que podría salirme con el simple marcado de enlace XAML. – KovBal
Si usamos un ObservableCollection para ser un puente entre linq a sql y el control, ¿cómo podemos usar SubmitChanges() para publicar el resultado de nuevo en la base de datos? – MemoryLeak
@MemoryLeak - así que aquí está el truco; no solo desea saber cuándo cambia la * colección * (es decir, qué INotifyCollectionChanged), sino también cuándo cambia alguno de los * elementos *. Por lo tanto, debe suscribirse al cambio de colección, luego agregar/eliminar, suscribirse a INotifyPropertyChanged de cada elemento. * Luego * tiene que decidir qué guardar según las notificaciones que reciba –