Поле автозаполнения со списком свойств

1

Я пытаюсь реализовать автоматическое полное поле со списком в С#. Я мог бы сделать это, когда я установил свойство выпадающего списка со списком вниз, чтобы "упасть вниз". Но не смог получить результат, когда свойство drop down установлено в "Drop list ". Пожалуйста, помогите мне решить эту проблему.

Вот мой код:

var connection=new SqlConnection(@"Data Source=.\SQLEXPRESS;AttachDbFilename=C:\Users\xxx.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True");
            var command=new SqlCommand("SELECT model FROM vehicle",connection);
            var adapter=new SqlDataAdapter(command);
            var ds = new DataSet();
            adapter.Fill(ds);
            AutoCompleteStringCollection col = new AutoCompleteStringCollection();
            int i = 0;
            for (i = 0; i <= ds.Tables[0].Rows.Count - 1; i++)
            {
                col.Add(ds.Tables[0].Rows[i]["model"].ToString());
            }
            comboBox1.AutoCompleteSource = AutoCompleteSource.CustomSource;
            comboBox1.AutoCompleteCustomSource = col;
            comboBox1.AutoCompleteMode = AutoCompleteMode.SuggestAppend;  
Теги:
sql-server
winforms
visual-studio-2010

1 ответ

0

Вы можете попробовать что-то вроде этого

 private void Form1_Load(object sender, EventArgs e)
        {
            comboBox1.AutoCompleteMode = AutoCompleteMode.Suggest;
            comboBox1.AutoCompleteSource = AutoCompleteSource.CustomSource;
            AutoCompleteStringCollection combData = new AutoCompleteStringCollection();
            getData(combData);
            comboBox1.AutoCompleteCustomSource = combData;
        }
        private void getData(AutoCompleteStringCollection dataCollection)
        {
            string connetionString = null;
            SqlConnection connection;
            SqlCommand command;
            SqlDataAdapter adapter = new SqlDataAdapter();
            DataSet ds = new DataSet();
            connetionString = @"Data Source=.\SQLEXPRESS;AttachDbFilename=C:\Users\xxx.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True";
            string sql = "SELECT model FROM vehicle";
            connection = new SqlConnection(connetionString);
            try
            {
                connection.Open();
                command = new SqlCommand(sql, connection);
                adapter.SelectCommand = command;
                adapter.Fill(ds);
                adapter.Dispose();
                command.Dispose();
                connection.Close();
                foreach (DataRow row in ds.Tables[0].Rows)
                {
                    dataCollection.Add(row[0].ToString());
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show("Can not open connection ! ");
            }
        }
  • 0
    Но как же мы набираем дроплист?
  • 0
    @utility ComboBox отображает текстовое поле в сочетании с ListBox, которое позволяет пользователю выбирать элементы из списка или вводить новые значения.
Показать ещё 1 комментарий

Ещё вопросы

Сообщество Overcoder
Наверх
Меню