Frage

Ich verwende Infragistics Ultragrid mit Datasouce Windows-Bindingsouce. Bei Änderung stelle ich Datasouce zu Bindingsouce und rufen Databinding von Ultragrid. Wert im Datasouce von Bindingsouce ändert, aber das ist nicht im Ultragrid reflektiert wird.

War es hilfreich?

Lösung

Ihre Bindungsquelle muss ein Ereignis erhöhen, um Grid Refresh auslösen. Zum Beispiel, wenn Sie BindingList verwenden, sollten sie das ListChanged Ereignis auslösen.

Andere Tipps

Also, stellen Sie sicher, dass was auch immer Klasse, die Sie als Binding-Objekt verwenden implementiert INotifyPropertyChanged, so dass, wenn Sie die BindingObject zur Laufzeit aktualisieren, es zu Binding kanalisiert wird, die durch Gitter wird schließlich aufgenommen.

h .:

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

public class Foo :  INotifyPropertyChanged

sehen MDSN Artikel hier

hängt auch davon, ob Sie die Sammlung außerhalb Grid (zur Laufzeit zu ändern, denn wenn Sie das tun, Sie BindingList<T> verwenden müssen, und weisen Sie es BindingSource

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top