Entwickler-Ecke

WinForms - ComboBox durchlaufen und Inhalt überprüfen und löschen


kevinkeegan - Di 22.01.08 19:17
Titel: ComboBox durchlaufen und Inhalt überprüfen und löschen
Hallo,

kurzes einfaches Problem:
Ich muß eine ComboBox durchlaufen und ihren Inhalt auf eine Zeichenkette überprüfen und wenn sie entspricht, muß der Index gelöscht werden. Kann mir jemand eine Code-Snip geben? Wie heißt der Vergleichsoperator in c# der auf "ungefähr wie" abfragt?

MfG
Kevin


Moderiert von user profile iconChristian S.: Topic aus C# - Die Sprache verschoben am Di 22.01.2008 um 19:23


Christian S. - Di 22.01.08 19:22

Du nimmst Dir eine Schleife her, die rückwärts(!) die Items durchläuft. In dieser Schleife prüfst Du den Inhalt des Items:

C#-Quelltext
1:
if (comboBox1.Items[i].ToString() == "foobar"//i = Schleifen-Variable                    

Mit der Remove-Methode der comboBox.Items kannst Du dann ein "unerwünschtes" Item löschen.

Mir ist keine fertige C#-Funktion bekannt, die Strings auf Ähnlichkeit prüft. Wie ähnlich sollen die Strings denn sein?

//edit: Klammern noch "ToString" ergänzt


kevinkeegan - Di 22.01.08 19:26

Danke für die Schnelle Hilfe, Christian.

Ich muß den Text auf beginnend mit "S" oder "Al" prüfen, mehr nicht. Sowas gibt es nicht in C#? Aber wie macht man sowas dann?

MfG
Kevin


Christian S. - Di 22.01.08 19:29

Doch, sowas einfaches gibt es: myString.StartsWith("foo")

Ich hab in meinem obigen Quelltext noch die Klammern nach "ToString" ergänzt, die hatte ich vergessen


kevinkeegan - Di 22.01.08 19:46
Titel: Erster und letzter Index einer ComboBox
OK, wenn Du mir jetzt noch verraten könntest, wie ich den letzten Index der ComboBox als Begrenzung für meine Schleife heraus kriege, ich finde dazu nichts in der Doku.


Christian S. - Di 22.01.08 19:48

Kann ich kaum glauben, dass das nicht in der Doku steht. Die Count-Eigenschaft der Items steht da bestimmt drin!


kevinkeegan - Di 22.01.08 20:20

hmm, also wie unschwer zu erkennen ist, stehe ich ganz am Anfang von C# und eine Brille habe ich auch schon aufgezogen, aber sowohl die Doku als auch der Compiler kennen keine Count-Eigenschaft ...

"Error 1 'System.Windows.Forms.ComboBox' does not contain a definition for 'count' " ...


Christian S. - Di 22.01.08 20:24

user profile iconChristian S. hat folgendes geschrieben:
Die Count-Eigenschaft der Items steht da bestimmt drin!
Ich hab mich mal zitiert und ein Wort markiert ;-) Du willst nicht die Combobox zählen ("Eine Box ... immer noch nur eine ... immer noch eine" *g*), sondern die darin enthaltenen Items :-)


kevinkeegan - Di 22.01.08 20:28

... das ist mir sehr unangenehm, ich habe die Brille geputzt ;)

Danke und schönen Abend noch!