Entwickler-Ecke

Basistechnologien - DisplayMember setzen mit leerer Datasource


freak4fun - So 29.06.14 03:27
Titel: DisplayMember setzen mit leerer Datasource

C#-Quelltext
1:
2:
3:
4:
5:
6:
private BindingList<Person> list;
...
this.list = new BindingList<Person>();
this.comboBox1.DataSource = this.list;
this.comboBox1.DisplayMember = "Name";
this.comboBox1.ValueMember = "Alter";


Fehler

Quelltext
1:
2:
3:
4:
5:
In System.NullReferenceException ist eine Ausnahme vom Typ "WindowsFormsApplication1.exe" aufgetreten, doch wurde diese im Benutzercode nicht verarbeitet.

Zusätzliche Informationen: Der Objektverweis wurde nicht auf eine Objektinstanz festgelegt.

Falls ein Handler für diese Ausnahme vorhanden ist, kann das Programm möglicherweise weiterhin sicher ausgeführt werden.


Jemand eine Idee wie ich das weg bekomm ohne die this.list zu füllen?


Th69 - So 29.06.14 10:44

Hallo,

in welcher Zeile tritt denn die Exception genau auf?

Du solltest aber generell zuerst DisplayMember und ValueMember setzen und danach erst DataSource.


PS: Ist das wirklich die Originalfehlermeldung?
Zitat:
In System.NullReferenceException ist eine Ausnahme vom Typ "WindowsFormsApplication1.exe" aufgetreten, ...

Dann paßt wohl etwas an der Parameterreihenfolge bei der deutschen Übersetzung im VS nicht. ;-)


freak4fun - So 29.06.14 16:26

Zitat:
Ein Ausnahmefehler des Typs "System.NullReferenceException" ist in WindowsFormsApplication1.exe aufgetreten.

Ja, genau richtig. Allerdings ist mir aufgefallen, das ich die folgende Methode gebunden habe.

C#-Quelltext
1:
private void comboBox1_SelectedValueChanged(object sender, EventArgs e)                    

Und hier tritt auch der Fehler auf. :oops: Es wurde nur die aufrufende Zeile angezeigt und ich dachte es liegt an der Zuordnung, stattdessen war das Objekt nicht gesetzt, bzw. null. :roll:
Aber danke für deine Hilfe. :idea: