Listbox czyszczenie indexu

0

Witam, wywołanie

 listabox1.SelectedIndex 

zwraca numer zaznaczonego elementu, jakim poleceniem wyczyścić numer zaznaczenia?, aby powyższa instrukcja zwróciła -1

0

Zgaduję, że:

listabox1.SelectedIndex = -1;
0

tak już próbowałem sam,
Error 1 Cannot assign to 'SetSelected' because it is a 'method group'

0

Pisałem Ci o tym już wczoraj: http://4programmers.net/Forum/Kosz/214155-problem_z_listboxem?p=936026#id936026
Metoda ClearSelected czyści zaznaczenie, więc SelectedIndex wynosi po jej wykonaniu -1.

0

Wyrzuca mi błąd, że wartość index = -1 jest nieprawidłowa, cały kod:

 

 private void textBox1_TextChanged(object sender, EventArgs e)
        {
            if (textBox1.Text.Length != 0)
            {
                button1.Visible = true;
                if (listBox1.SelectedIndex == -1)
                {
                    listBox1.Items.Clear();
                    if (lista_slow.Contains(new slowa(textBox1.Text)))
                    {
                        listBox1.Visible = true;
                        for (int i = 0; i < lista_slow.Count; i++)
                        {
                            if (lista_slow[i].my_contain(new slowa(textBox1.Text))) listBox1.Items.Add(lista_slow[i].slowo);
                        }
                        listBox1.Height = 18 * listBox1.Items.Count;
                    }
                    else listBox1.Items.Add("Nie znaleziono");
                }
                else listBox1.ClearSelected();
               
              }
             
                  
        }

0

W której linijce ten błąd?
Co w ogóle chcesz osiągnać?

0

Kod wygląda tak:

 
private void textBox1_TextChanged(object sender, EventArgs e)
        {
            if (textBox1.Text.Length != 0)
            {
                button1.Visible = true;
                    if (lista_slow.Contains(new slowa(textBox1.Text)) && listBox1.SelectedIndex == -1)
                    {
                        listBox1.Items.Clear();
                        listBox1.Visible = true;
                        for (int i = 0; i < lista_slow.Count; i++)
                        {
                            if (lista_slow[i].my_contain(new slowa(textBox1.Text))) listBox1.Items.Add(lista_slow[i].slowo);
                        }
                    }
                    else if (!lista_slow.Contains(new slowa(textBox1.Text)))
                    {
                        listBox1.Items.Clear();
                        listBox1.Items.Add("Nie znaleziono");
                    }
                    listBox1.Height = 17 * listBox1.Items.Count;
                }
                         
                    
                  
        }

           private void listBox1_SelectedIndexChanged(object sender, EventArgs e)
        {
            textBox1.Text = listBox1.Items[listBox1.SelectedIndex].ToString();
        }

Działanie miało polegać na tym:

  • dodajesz jakieś słowa

  • przy kolejnych próbach dodawania są podpowiedzi w oparciu o wcześniej dodane słowa

Np. wpisujemy słowo "ala" => zatwierdzamy, potem "alina" => zatwierdzamy, i za kolejnym wystarczy wpisać literkę "a" pojawiają się dwa rekordy potem kolejna literka itd.
Przerobiłem trochę warunek i teraz działa ok, ale poprzednio ClearSelected() nie działał prawidłowo, zapewne mój błąd. Co sądzisz o programie?
Program w załączniku

1 użytkowników online, w tym zalogowanych: 0, gości: 1