Question

J'utilise Infragistics UltraGrid avec datasouce de Windows Bindingsouce. Le changement, je fournis datasouce à Bindingsouce et appeler DataBinding de UltraGrid. Valeur dans le datasouce des changements Bindingsouce, mais qui ne se reflète pas dans le UltraGrid.

Était-ce utile?

La solution

Votre source de liaison doit soulever un événement pour déclencher l'actualisation de la grille. Par exemple, si vous utilisez BindingList il devrait déclencher l'événement ListChanged.

Autres conseils

En outre, assurez-vous que quelle que soit la classe que vous utilisez comme objet de liaison implémente INotifyPropertyChanged de sorte que lorsque vous mettez à jour le BindingObject au moment de l'exécution, il se canalisé vers BindingSource qui obtient finalement repris par la grille.

i.e. .:

BindingList<Foo> lstItems = new BindingList<Foo>;
BindingSource bso = ;
bso.DataSource = lstItems; 
Grid.DataSource = bso; 

public class Foo :  INotifyPropertyChanged

voir l'article MDSN

dépend également si vous changer la collection en dehors de la grille (à l'exécution, parce que si vous le faites, vous devez utiliser BindingList<T> et l'affecter à BindingSource

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top