Warum werden nicht gebundene DataGridView-Zellen aktualisiert?

8

Ich habe meine DataGridView erfolgreich an eine Liste gebunden. Das Raster wird jedoch nicht aktualisiert, wenn ich einige der Eigenschaften eines der Objekte in der Liste programmatisch ändere. Wenn ich in die Zelle klicke (oder das Formular minimiere und dann maximiere), wird der angezeigte Wert aktualisiert.

Ich lese hier , das ich verwenden sollte eine BindingList. Die Liste, die ich verwende, ist ein Interface-Typ, der IBindingList nicht implementiert. Der konkrete Typ, der zum Initialisieren der Liste verwendet wird, erbt jedoch BindingList. Irgendwelche Ideen?

    
bsh152s 11.10.2011, 16:27
quelle

1 Antwort

9

Ihre Liste muss IBindingList implementieren (oder BindingList sein) und Ihr Objekt muss INotifyPropertyChanged implementieren. Beide Bedingungen sind erforderlich, damit Ihr DataGridView ordnungsgemäß bindet.

Wenn Ihre Datenquelle beispielsweise MyList<MyClass> wäre, muss MyList IBindingList implementieren und MyClass muss implimentement INotifyPropertyChanged implementieren.

Hier ist ein schönes Beispiel: Ссылка

    
Ahmet 11.10.2011, 18:21
quelle

Tags und Links