Ich möchte eine Methode machen die meine ComboBox abfüllt.
Ich möchte also der Methode das SQL statement und den DysplayMember als string übergeben.
Soweit so gut. Aber wie übergebe ich nun die ComboBox die abgefüllt werden soll? (Die Methode soll ja für mehrere ComboBoxen genutzt werden können).
private void setValuesInCb(hier möchte ich die ComboBox angeben X,string strSql,string strDM)
{
X.DataSource = setValues("SELECT * FROM Y";);
X.DisplayMember = "XYZ";
}
Hallo ganymedes,
wie alle anderen Typen von Parametern auch:
private void setValuesInCb(ComboBox X, string strSql,string strDM)
herbivore
Nein, das habe ich schon versucht.....
setValuesInCb(cb_TicketNummer,"SELECT * FROM XYZ","XYQ");
aber da kommt nur System.Windows.Forms.ComboBox daher...
Da steht also:
System.Windows.Forms.ComboBox.DataSource
und nicht:
cb_TicketNummer.DataSource
Hallo ganymedes,
natürlich geht das. Ob du eine ComboBox oder einen String übergibst spielt von Prinzip her keine Rolle.
Wenn der Parameter X heißt, dann muss in der Methode natürlich X.DataSource = ... stehen.
herbivore
Ja klar, habe ich auch...aber da kommt kein Wert daher....
habe ich ja ganz am Anfang schon so geschrieben....
X.DataSource = setValues("SELECT * FROM Y";); X.DisplayMember = "XYZ";
aber bei mir geht das nicht....was mache ich wohl falsch??
Die Übergabe funktioniert, aber der Fehler tritt bei der Zuweisung von ValueMember auf.
Es kommt folgende Fehlermeldung:
An den neuen Anzeigemember kann nicht gebunden werden.
Parametername: newDisplayMember
Hallo ganymedes,
naja, das ist doch eine klare Fehlermeldung. Vermutlich enthalten die Objekte, die du an die ComboBox bindest keine Property newDisplayMember.
herbivore
Hallo herbivore
?( ?(
naja, das ist doch eine klare Fehlermeldung. Vermutlich enthalten die Objekte, die du an die ComboBox bindest keine Property newDisplayMember.
?( ?( und was heisst das?
Hallo ganymedes,
also, sorry, wirklich. Klarer kann ich es nun wirklich nicht mehr schreiben.
Ich denke mal, du solltest erstmal einen Schritt zurücktreten und dir die Grundlagen aneignen, z.B. in dem du Galileo <openbook>: Visual C# 2005 von Andreas Kühnelg gründlich durcharbeitest. In diesem Zusammenhang insbesondere die Abschnitte über DataBinding. Wir erwarten das von dir.
herbivore
übergib doch einfach die combobox per referenz
setValuesInCb(ref cb_TicketNummer,"SELECT * FROM XYZ","XYQ");
und befüll sie dann in der methode mit deinem selectstatement
siehe [Artikel] C# und Übergabemechanismen: call by value vs. call by reference (ref/out)
Obstehende Probleme können häufig miserabel Formuliert und dadurch extrem unverständlich sein
Hallo odysy,
das ist vollkommen unnötig und wäre sogar irreführend, weil ComboBox schon ein Referenztyp ist.
herbivore
Ok das wusste ich bisher selbst noch nicht
Obstehende Probleme können häufig miserabel Formuliert und dadurch extrem unverständlich sein
Hallo ganymedes,
nein, lass es bitte. Wie ich schon schrieb:
das ist vollkommen unnötig und wäre sogar irreführend, weil ComboBox schon ein Referenztyp ist.
herbivore