Поиск между двумя выпадающими меню в форме окна приложения

1

Я добился поиска через одно раскрывающееся меню.

 private void search_Click(object sender, EventArgs e)
        {
            string query = "SELECT * FROM magzines where issue_number = '"+comboBox1.Text+"'";
            SqlDataAdapter sda = new SqlDataAdapter(query , con);
            DataTable dt = new DataTable();
            sda.Fill(dt);
            dataGridView1.Rows.Clear();
            foreach (DataRow item in dt.Rows)
            {
                int n = dataGridView1.Rows.Add();
                dataGridView1.Rows[n].Cells[0].Value = item[0].ToString();
                dataGridView1.Rows[n].Cells[1].Value = item[1].ToString();
                dataGridView1.Rows[n].Cells[2].Value = item[2].ToString();
                dataGridView1.Rows[n].Cells[3].Value = item[3].ToString();
            }
        }

пожалуйста, помогите мне, как я могу выполнить поиск в двух выпадающих меню?

  • 0
    ваш запрос не понятен, дайте по понятному
Теги:
winforms

2 ответа

0

вы можете использовать BindingSource

 BindingSource source1 = new BindingSource();
source1.DataSource = view1;

// Set the data source for the DataGridView.
datagridview1.DataSource = dt ;

//The Filter string can include Boolean expressions.
source1.Filter = "artist = 'Dave Matthews' OR cd = 'Tigerlily'";

для получения дополнительной информации посетите http://msdn.microsoft.com/en-us/library/system.windows.forms.bindingsource.filter%28VS.90%29.aspx

0

Вы должны перейти на параметризованный запрос, чтобы избежать атак SQL-инъекций, а не конкатенации строки SQL, как вы это делаете. Чтобы ответить на вопрос, добавьте второе раскрывающееся меню и используйте BETWEEN в запросе...

string query = "SELECT * FROM magzines where issue_number BETWEEN '"+comboBox1.Text+"' AND '"+comboBox2.Text+"'";

Пример использования параметров...

using (SqlConnection conn = new SqlConnection(con))
    {
      string query = "SELECT * FROM magzines where issue_number BETWEEN '@comboOne' AND '@comboTwo'";
      using (SqlCommand cmd = new SqlCommand(query, conn))
      {
        cmd.Parameters.Add("comboOne", SqlDbType.VarChar).Value = comboBox1.Text;
        cmd.Parameters.Add("comboTwo", SqlDbType.VarChar).Value = comboBox2.Text;
        using (SqlDataAdapter da = new SqlDataAdapter(cmd))
          da.Fill(table);            
      }
    }
  • 0
    thkyou cristiandev Я хочу добавить функцию расширенного поиска почти от 7 до 8 dropdownmenu. Помогите мне, пожалуйста
  • 0
    как применить условие? если не выбрано одно раскрывающееся меню, а выбрано другое?
Показать ещё 3 комментария

Ещё вопросы

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