извлекать данные в ячейки текстового поля автозаполнения представления данных

1

я в основном делаю счет в С#, в котором мне нужно сделать ячейку datagridview автозаполненной, в соответствии с выбранным значением в этой ячейке следующий пакет coulmn no должен быть автозаполнен данными, соответствующими выбранному значению..

 private void dataGridView1_EditingControlShowing(object sender, DataGridViewEditingControlShowingEventArgs e)
        {


            if (dataGridView1.CurrentCell.ColumnIndex == 1)
            {
                SqlDataReader dreader;

                AutoCompleteStringCollection acBusIDSorce = new AutoCompleteStringCollection();
                cmd =new SqlCommand( "Select * from SUP_PRO",conn);
                conn.Open();
                dreader = cmd.ExecuteReader();
                if (dreader.HasRows == true)
                {
                    while (dreader.Read())

                    acBusIDSorce.Add(dreader["P_name"].ToString());


                }
                else
                {
                    MessageBox.Show("Data not Found");
                }
                dreader.Close();

                TextBox Product = e.Control as TextBox;
                if (Product != null)
                {
                    Product.AutoCompleteMode = AutoCompleteMode.SuggestAppend;
                    Product.AutoCompleteCustomSource = acBusIDSorce;
                    Product.AutoCompleteSource = AutoCompleteSource.CustomSource;

                }

но этот код только извлекает данные из одного столбца моей таблицы данных, который является P_name.., пожалуйста, помогите в получении данных в других ячейках, а также в пакете no, mrp и т.д.

plz помогите мне поблагодарить u

Теги:
visual-studio-2010
autocomplete
datagridview

1 ответ

0
Лучший ответ

Я решил эту проблему, добавив еще несколько объектов для AutoCompleteStringCollection

private void dataGridView1_EditingControlShowing(object sender, DataGridViewEditingControlShowingEventArgs e)
 {
    if (dataGridView1.CurrentCell.ColumnIndex == 1)
      {
        SqlDataReader dreader;    
        AutoCompleteStringCollection MyCollection1  = new AutoCompleteStringCollection();
        AutoCompleteStringCollection MyCollection2 = new AutoCompleteStringCollection();
        AutoCompleteStringCollection MyCollection3 = new AutoCompleteStringCollection();
        cmd =new SqlCommand( "Select * from SUP_PRO",conn);
        conn.Open();
         dreader = cmd.ExecuteReader();
         if (dreader.HasRows == true)
          {
              while (dreader.Read())

          MyCollection1.Add(dreader["P_name"].ToString());
          MyCollection2.Add(dreader["P_ProName"].ToString());
          MyCollection3.Add(dreader["P_rate"].ToString());
      }
            else
            {
                MessageBox.Show("Data not Found");
            }
            dreader.Close();

            TextBox Product = e.Control as TextBox;
            if (Product != null)
            {
                Product.AutoCompleteMode = AutoCompleteMode.SuggestAppend;
                Product.AutoCompleteCustomSource = MyCollection1;
                Product.AutoCompleteSource = AutoCompleteSource.CustomSource;

            Product.AutoCompleteMode = AutoCompleteMode.SuggestAppend;
            Product.AutoCompleteCustomSource = MyCollection2;
            Product.AutoCompleteSource = AutoCompleteSource.CustomSource;

            Product.AutoCompleteMode = AutoCompleteMode.SuggestAppend;
            Product.AutoCompleteCustomSource = MyCollection3;
            Product.AutoCompleteSource = AutoCompleteSource.CustomSource;
            }

Ещё вопросы

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