Sourav Sarkar-SS Ответов: 1

Альтернатива ComboBox.Предметы.Четкий()


Что я хочу, так это реализовать следующий код
private void comboBox2_TextChanged(object sender, EventArgs e)
        {
            SendKeys.Send("{END}");
            comboBox2.Items.Clear();
            SqlConnection con = new SqlConnection();
            con.ConnectionString = Global.constr;
            con.Open();
            SqlCommand cmd = new SqlCommand("select itemCode from ItemDetails where  
                                            ItemCode like '" + comboBox2.Text + "%' 
                                            order by ItemCode", con);
            SqlDataReader dr = cmd.ExecuteReader();
            
            while (dr.Read())
            {
                comboBox2.Items.Add(dr[0].ToString());
            }
            dr.Close();
            con.Close();
            
        }


Но код не работает, когда я использую стрелку вниз для выбора элемента.
ComboBox2.Items.Очистить(); код клиринговой мой текст тоже.
Поиск-это прекрасно. Но я не могу выбрать конкретный пункт из списка. Он был очищен автоматически.
Пожалуйста помочь
Заранее спасибо

Sergey Alexandrovich Kryukov

Чего именно вы хотите достичь? Что такое "не работает"? SendKeys-это грязная вещь, которую нельзя использовать для решения обычных проблем пользовательского интерфейса.
--СА

[no name]

У меня нет никаких проблем с SendKey.
Моя проблема-ComboBox.Предметы.понятно();

1 Ответов

Рейтинг:
0

Monjurul Habib

Попробуйте следовать:

private void comboBox2_TextChanged(object sender, EventArgs e)
        {
            SendKeys.Send("{END}");
            //comboBox2.Items.Clear(); NOT HERE
            SqlConnection con = new SqlConnection();
            con.ConnectionString = Global.constr;
            con.Open();
            SqlCommand cmd = new SqlCommand("select itemCode from ItemDetails where  
                                            ItemCode like '" + comboBox2.Text + "%' 
                                            order by ItemCode", con);
            SqlDataReader dr = cmd.ExecuteReader();
            comboBox2.Items.Clear(); // HERE
            while (dr.Read())
            {
                comboBox2.Items.Add(dr[0].ToString());
            }
            dr.Close();
            con.Close();
            
        }


[no name]

Я уже пробовал вышеприведенный код. но все же мое текстовое свойство очищается этим кодом.
Как использовать элементы в свойстве text.