Przekazanie wyniku w zmiennej między ComboBoxem a Buttonem

0

Po wybraniu elementu w comboBox1 naciskam button1 i tam potrzebna jest zmienna a. Nie chce deklarować jako zmienną globalną bo wiem że tak się nie powinno robić. Jak to powinno prawidłowo wyglądać? Tak przy okazji może mi ktoś wyjaśni dlaczego nie działa mi searchLimit i wyświetla mi ponad 40 wyników przy użyciu doSearch w allegro.

 
private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
        {
            textBox1.Text = comboBox1.SelectedItem.ToString();
            int a = comboBox1.SelectedIndex;
            a = a+1;
            textBox2.Text = a.ToString();

        }

--------------------------------------
private void button1_Click(object sender, EventArgs e)
        {


            int searchCountFeatured = 0;

            SearchOptType searchQuery = new SearchOptType();
            searchQuery.searchString = textBox1.Text;
            searchQuery.searchOptions = 262;
            searchQuery.searchState = a; //Błąd "Nazwa „a” nie istnieje w bieżącym kontekście."
            searchQuery.searchLimit = 40;

int search = service.doSearch(sessionHandle,
                                          searchQuery,
                                          out searchCountFeatured,
                                          out searchArray,
                                          out searchExcludedWords,
                                          out searchCategories);
        }
0

int a; jako pole klasy.

0

Jak to powinno wyglądać przy użyciu tych kontrolek? Zrobić klasę wewnątrz comboBox czy oddzielny plik z klasą i zdeklarować obiekt klasy w comboBox?

0

A czy te handlery comboBox1_SelectedIndexChanged i button1_Click nie są w jednej klasie?

Zrobić klasę wewnątrz comboBox czy oddzielny plik z klasą i zdeklarować obiekt klasy w comboBox?

Nie rozumiem tego.

Albo po prostu

searchQuery.searchState = comboBox1.SelectedIndex +1;

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