C# Abfrage/Ändern bei Listbox (Win Forms)

Abcd12345

Lt. Junior Grade
Registriert
März 2006
Beiträge
483
Hi,

Ich möchte gerne abfragen ob ein bestimmtes Listboxelement ausgewählt ist und wenn dies der Fall ist dann soll es geändert werden.

Wie mache ich sowas?

Gruß Abcd
 
Hi,
ich hab ne kleine Funktion geschrieben, die alle ausgewählten Elemente in der Listbox ersetzt.
ich hoffe das ist was du suchst:
Code:
void ReplaceListBoxItems(ListBox MyListBox)
{
    List<int> ItemIndices = new List<int>();

    foreach (object o in MyListBox.SelectedItems)
    {
        ItemIndices.Add(MyListBox.Items.IndexOf(o));
    }

    foreach (int Index in ItemIndices)
    {
        MyListBox.Items.RemoveAt(Index);
        MyListBox.Items.Insert(Index, "ERSETZT");
    }
}
 
Okey Danke schonmal :)

Gibt es auch eine möglichkeit heruaszufinden welchen List index das ausgewählte Element bei einer "ComboBox" hat?

Also z.B. in einer Combobox sind 3 Elemente gespeichert: Element1, Element2, Element3

Wenn jetzt Element1 ausgewählt ist dann bräuchte ich den Index des Elements also 0 in diesem Fall.

Gibt es da eine möglichkeit wie ich den Index bekomme?
 
@ krizzelfix:
so kriegt man nur den Wert des ausgewählten Elements, also wenn z.B. Element1 ausgewählt ist bekommt man "Element1".

Den Index kriegst du immer mit IndexOf()

Code:
int Index = MyComboBox.Items.IndexOf(MyComboBox.SelectedItem);
 
Ok, aber einen Blick ins VS Intellisense hätte das gezeigt:
Code:
comboBox1.SelectedIndex
Das aus Perforemance gründen und Lesbarkeit wesentlich besser.
 
Zurück
Oben