Autor Beitrag
Vegeto
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 262



BeitragVerfasst: Mi 25.03.15 12:30 
Hallo,

ich möchte meine Combobox mittels Datatable füllen:

ausblenden C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
DataSet myDataSet = new DataSet();
myDataSet.Tables.Add(s.ShowKunde());

comboBox1.DisplayMember = "Id";
comboBox1.ValueMember = "Name";
comboBox1.DataSource = myDataSet.Tables["Obst"];
// hinter dem myDataSet.tables["Obst"] habe ich auch .DefaultView ausprobiert, doch es kommt das selbe Problem.


Doch wenn ich das so ausführe steht in meiner Combobox: 10x System.Data.DataRowView, es ist schon Korrekt das nur 10 Zeilen angezeigt werden soll, aber leider zeigt er nicht die ID und den Namen an :(

Ich hoffe jemand weiß wo das Problem liegt, habe schon gegooglt und viele haben es so gemacht wie ich es auch hab, doch bei mir kommt nicht die gewünschte Ergebnismenge.

Liebe Grüße
Ralf Jansen
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 4708
Erhaltene Danke: 991


VS2010 Pro, VS2012 Pro, VS2013 Pro, VS2015 Pro, Delphi 7 Pro
BeitragVerfasst: Mi 25.03.15 12:34 
Erst DataSource zuweisen dann DisplayMember/ValueMember setzen und ich vermute mal du hast die Bedeutung von DisplayMember und ValueMember miteinander verwechselt.

Für diesen Beitrag haben gedankt: Vegeto
Vegeto Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 262



BeitragVerfasst: Mi 25.03.15 12:52 
Hallo Ralf Jansen,

ich habe nun Datasource zugewiesen und DisplayMember und ValueMember miteinander gewechselt. Doch leider kommt diese Fehlermeldung:
ausblenden Quelltext
1:
ArgumentException: An den neuen Anzeigemember kann nicht gebunden werden.					

Ich weiß leider nicht voran das liegt :(

Kann mir da jemand helfen?

Lg
Ralf Jansen
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 4708
Erhaltene Danke: 991


VS2010 Pro, VS2012 Pro, VS2013 Pro, VS2015 Pro, Delphi 7 Pro
BeitragVerfasst: Mi 25.03.15 13:05 
Weiß nicht genau was die Meldung zu bedeuten hat. Gucken wir aber gerade mal auf was anderes. Wieso schiebst du die DataTable durch ein DataSet und bindest nicht gleich an die DataTable? Und wenn die Funktion die die DataTable liefert ShowKunde heißt wieso meinst du im DataSet würde die plötzlich "Obst" heißen? Du veraltest Kunden in einer Tabelle die Obst heißt?

Für diesen Beitrag haben gedankt: Vegeto
Vegeto Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 262



BeitragVerfasst: Mi 25.03.15 13:23 
Hallo Ralf Jansen,

ShowKunde() ist eine Methode die ein DataTable erstellt mit dem Namen Obst. Ich habe vergessen ShowKunde in ShowObst zu ändern :oops:
Ich habe es auch schon direkt versucht die Combobox mit dem Datatable zu erstellen, doch dort tauchen die selben Probleme auf wie mit dem DataSet.
ausblenden C#-Quelltext
1:
comboBox1.DataSource = s.ShowObst();					

Kommt zu der selben Fehlermeldung.

LG
Ralf Jansen
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 4708
Erhaltene Danke: 991


VS2010 Pro, VS2012 Pro, VS2013 Pro, VS2015 Pro, Delphi 7 Pro
BeitragVerfasst: Mi 25.03.15 13:28 
Dann gehe ich mal davon aus das du entweder Id oder Name falsch geschrieben hast. Zumindest nicht so wie sie in der DataTable heißen.

Für diesen Beitrag haben gedankt: Vegeto
Vegeto Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 262



BeitragVerfasst: Mi 25.03.15 13:48 
Hi Ralf Jansen,

DANKESCHÖN... Recht hast du ich habe den ValueMember falsch geschrieben :oops:
Ist es auch möglich in der Combobox Id und "ObstName"(so war es in dem DT) nebeneinander anzuzeigen, z.B. 1 Apfel, 2 Birne ... ?

LG
Ralf Jansen
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 4708
Erhaltene Danke: 991


VS2010 Pro, VS2012 Pro, VS2013 Pro, VS2015 Pro, Delphi 7 Pro
BeitragVerfasst: Mi 25.03.15 14:59 
Eine ComboBox ist erstmal einspaltig. Wenn du beides so anzeigen willst dann brauchst du in deiner Abfrage eine entsprechende Spalte die das so liefert.