ADI@345 Ответов: 2

Оконное приложение C#, поиск в списке


3
down vote
favorite
2


У меня есть большое количество элементов в списке под названием listBox1. У меня также есть текстовое поле (textBox1) в верхней части. Я хочу иметь возможность вводить текст в текстовое поле, а список просматривает его элементы и находит те, которые содержат то, что я печатаю.

Например, предположим, что список содержит
Cat
Dot
Carrot
and Barcolli


Если я начну печатать письмо C, тогда я хочу, чтобы он показал и то, и другое Cat и Carrot, когда я набираю a, он должен продолжать показывать их обоих, но когда я добавляю r его следует удалить Cat в списке. Есть в любом случае для этого?

я извлекаю listbox из databse а затем когда мы набираем текст в textbox в соответствии с этим текстовым элементом show in textbox

Что я уже пробовал:

private void Form1_Load(object sender, EventArgs e)
        {
          
            SqlConnection con = new SqlConnection(Edit.connectionname());
            
            string query = "select MEDICINE from tinchure";
            SqlCommand cmd = new SqlCommand(query, con);
            DataTable data = new DataTable();
            SqlDataReader dbr;
            try
            {
                con.Open();
                dbr = cmd.ExecuteReader();
                while (dbr.Read())
                {
                    string sname = (string)dbr["MEDICINE"]; //name is coming from database
                   listBox1.Items.Add(sname);

                   string[] array = new string[listBox1.Items.Count];

                   for (int i = 0; i < listBox1.Items.Count; i++)
                   {
                       object s = listBox1.Items[i];
                       array[i] = s.ToString();
                   }
                  
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }

          private void textBox5_TextChanged(object sender, EventArgs e)
        {
            listBox1.Items.Clear();

            foreach (string str in )
            {
                if (str.StartsWith(textBox5.Text, StringComparison.CurrentCultureIgnoreCase))
                {
                    listBox1.Items.Add(str);
                }


            }


        }

[no name]

если" есть ли способ сделать это? "- это ваш реальный вопрос, то ваш ответ: "Да, есть много способов сделать это."

ZurdoDev

Нет, они не спрашивали: "есть ли много способов сделать это?";) да, есть все равно, чтобы сделать это.

[no name]

Спасибо. Я думаю, что моя попытка использовать экстрасенсорные способности, как и многие другие, похоже, потерпела неудачу.

Maciej Los

Вопрос помечен как ASP.NET но код и название вопросы соответствуют данным приложения WinForms.

[no name]

Да, и попытайтесь выяснить, как" кошка, точка, морковка и Барколли " являются лекарствами.... Хотя барколли может быть лекарством. Я понятия не имею, что такое барколли.

Maciej Los

Я думаю, что эти данные-своего рода глупые данные.

Patrice T

Я, наверное, что-то пропустил, но у вас есть вопрос ?

2 Ответов

Рейтинг:
1

manu_dhobale

Предполагая, что вы хотите достичь этого в winform.

вот текстовое поле автоматического предложения, пожалуйста, посмотрите, надеюсь, это вам поможет

самовнушение текстового поля
[^]


Рейтинг:
0

Maciej Los

Начать здесь: Поиск по мере ввода текста в C#[^Это может помочь вам найти способ реализовать поиск будущего в вашей WinForm.
Попробуй!