Форум программистов, компьютерный форум, киберфорум
C# Windows Forms
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
0 / 0 / 0
Регистрация: 20.05.2013
Сообщений: 20

Поиск записей в datagridview по выбранному значению в combobox

10.12.2014, 22:26. Показов 1430. Ответов 0
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Подскажите, пожалуйста, что я делаю не так.
У меня есть локальная БД. На форме я осуществляю поиск записей по выбранному значению. Сначала в combobox1 я выбираю критерий, по которому буду осуществлять выбор. Т.е., например если я выбираю по "номеру", то появляется textbox, в который я ввожу номер и после нажатия на кнопку ОК записи по этому номеру появляются в datagridview. С этим все в порядке, все работает. Но если же я выбираю в combobox1 критерий "валюта", например, то должен появиться combobox2, в котором я выбираю конкретную валюту, например "USD". Но после того, как я это делаю и нажимаю ОК в datagridview ничего не появляется.

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
public partial class DealSearch : Form
    {
        DealDBDataSet dsDeal = new DealDBDataSet();
        WindowsFormsApplicationDeal.DealDBDataSetTableAdapters.CurrencyTableAdapter daCurr = new WindowsFormsApplicationDeal.DealDBDataSetTableAdapters.CurrencyTableAdapter();
        WindowsFormsApplicationDeal.DealDBDataSetTableAdapters.ViewDealTableAdapter daView = new WindowsFormsApplicationDeal.DealDBDataSetTableAdapters.ViewDealTableAdapter();
        WindowsFormsApplicationDeal.DealDBDataSetTableAdapters.DealTableAdapter daDeal = new WindowsFormsApplicationDeal.DealDBDataSetTableAdapters.DealTableAdapter();
        WindowsFormsApplicationDeal.DealDBDataSetTableAdapters.DealPlaceTableAdapter daPlace = new WindowsFormsApplicationDeal.DealDBDataSetTableAdapters.DealPlaceTableAdapter();
        WindowsFormsApplicationDeal.DealDBDataSetTableAdapters.DealTypeTableAdapter daType = new WindowsFormsApplicationDeal.DealDBDataSetTableAdapters.DealTypeTableAdapter();
        SqlConnection con = new SqlConnection(@"Data Source=(LocalDB)\v11.0;AttachDbFilename=|DataDirectory|\DealDB.mdf;Integrated Security=True");
        public DealSearch()
        {
            InitializeComponent();
 
        }
        private void comboBox1_SelectedValueChanged(object sender, EventArgs e)
        {
 
            if (comboBox1.SelectedItem == "Номер сделки" || comboBox1.SelectedItem == "Номер поручения" || comboBox1.SelectedItem == "Код трейдера" || comboBox1.SelectedItem == "Тикер")
            {
                textBox1.Visible = true;
                comboBox2.Visible = false;
            }
 
 
            else
            {
                textBox1.Visible = false;
                comboBox2.Visible = true;
 
                {
                    if (comboBox1.SelectedItem == "Валюта")
                    {
                        comboBox2.DataSource = this.dsDeal.Currency;
                        comboBox2.DisplayMember = "CurrencyShort";
                        comboBox2.ValueMember = "Id";
                    }
 
                    {
                        if (comboBox1.SelectedItem == "Место проведения")
                        {
                            comboBox2.DataSource = this.dsDeal.DealPlace;
                            comboBox2.DisplayMember = "PlaceShort";
                            comboBox2.ValueMember = "Id";
                        }
 
                        {
                            if (comboBox1.SelectedItem == "Тип сделки")
                            {
                                comboBox2.DataSource = this.dsDeal.DealType;
                                comboBox2.DisplayMember = "Type1";
                                comboBox2.ValueMember = "Id";
                            }
                        }
                    }
                }
            }
 
 
            button1.Visible = true;
        }
 
        private void DealSearch_Load(object sender, EventArgs e)
        {
            // TODO: данная строка кода позволяет загрузить данные в таблицу "dealDBDataSet.Currency". При необходимости она может быть перемещена или удалена.
            this.currencyTableAdapter.Fill(this.dealDBDataSet.Currency);
            // TODO: данная строка кода позволяет загрузить данные в таблицу "dealDBDataSet.ViewDeal". При необходимости она может быть перемещена или удалена.
            this.viewDealTableAdapter.Fill(this.dealDBDataSet.ViewDeal);
 
            daCurr.Fill(dsDeal.Currency);
            daView.Fill(dsDeal.ViewDeal);
            daType.Fill(dsDeal.DealType);
            daDeal.Fill(dsDeal.Deal);
            daPlace.Fill(dsDeal.DealPlace);
 
            dataGridView1.Visible = false;
        }
 
        private void button1_Click(object sender, EventArgs e)
        { 
            con.Open();
            DataTable dt = new DataTable();
            dataGridView1.DataSource = dt;
            con.Close();
 
            if (comboBox1.Text == "Номер сделки")
            {
                SqlDataAdapter sda = new SqlDataAdapter("SELECT * FROM ViewDeal WHERE Number like ('" + textBox1.Text + "%') ", con);
                sda.Fill(dt);
            }
 
            if (comboBox1.Text == "Код трейдера")
            {
                SqlDataAdapter sda = new SqlDataAdapter("SELECT * FROM ViewDeal WHERE  Trader like ('" + textBox1.Text + "%') ", con);
                sda.Fill(dt);
            }
 
            if (comboBox1.Text == "Тикер")
            {
                SqlDataAdapter sda = new SqlDataAdapter("SELECT * FROM ViewDeal WHERE  Tiker like ('" + textBox1.Text + "%') ", con);
                sda.Fill(dt);
            }
 
            if (comboBox1.Text == "Номер поручения")
            {
                SqlDataAdapter sda = new SqlDataAdapter("SELECT * FROM ViewDeal WHERE  Order1 like ('" + textBox1.Text + "%') ", con);
                sda.Fill(dt);
            }
 
            if (comboBox1.Text == "Валюта")
            {
                SqlDataAdapter sda = new SqlDataAdapter("SELECT * FROM ViewDeal WHERE CurrencyShort like ('" + comboBox2.SelectedItem + "%') ", con);
                sda.Fill(dt);
            }
            
            dataGridView1.Visible = true;
        }
    }
}
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
10.12.2014, 22:26
Ответы с готовыми решениями:

По выбранному в combobox-е значению выводить соответствующие данные в datagridview
Напишите, пожалуйста, как сделать, чтобы по выбранному в combobox-е значению выводить соответствующие данные в datagridview ?

DataGridView. Поиск в столбце отмеченном в ComboBox, по значению в TextBox
Доброго времени суток. Возникла проблема. Есть 4 элемента. dataGridView , ComboBox, TextBox и Button. Пытаюсь реализовать,что бы в...

Поиск по DataGridView через combobox
Ночи доброй! Подскажите пожалуйста, как реализовать поиск по DataGridView (Access) через 7шт. combobox-ов??

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
10.12.2014, 22:26
Помогаю со студенческими работами здесь

Загрузка данных из БД в текстовые поля по выбранному значению в ListView
такая ситуация есть БД и listview 1-шаг: загружаю колонку ИФО в listview 2-шаг: выбираю нужное имя дальше нажимаю двойным кликом и...

Как обратиться к выбранному элементу в ComboBox
Здравствуйте) Помогите плиз разобраться с combobox. Дана длинная задача, всё могу сделать, только с combobox проблемы... При выборе...

Фильтр записей БД по выбранному значению в ComboBox
Здравствуйте. Помогите прикрутить к фильтру два combobox. В первом я выбираю столбец,во втором инфу из него. И фильтрую в datagrid. Бд sql...

По выбранному в ComboBox значению выводить соответствующие данные в DataGridView
необходимо создать сортировку в datagridview по выбору данных из combobox. в combobox выведены цифры. принцип такой: в combobox...

Поиск в бд по выбранному значению в Combobox
Доброго времени суток! Помогите,пожалуйста,сделать поиск в программе по бд Имеется бд сделанная в access; DBGrid на форме,на котором...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Новые блоги и статьи
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои. А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20% kYBz3eJf3jQ
Дальние перспективы сервера - слоя сети с космологическим дизайном интефейса карты и логики.
Hrethgir 07.04.2026
Дальнейшее ближайшее планирование вывело к размышлениям над дальними перспективами. И вот тут может быть даже будут нужны оценки специалистов, так как в дальних перспективах всё может очень сильно. . .
Горе от ума
kumehtar 07.04.2026
Эта мне ментальная установка, что вот прямо сейчас, мол, мне для полного счастья не хватает (нужное вписать), и когда я этого достигну - тогда и полный кайф. Одна из самых сильных ловушек на пути. . . .
Использование значений реквизитов справочника в документе, с определенными условиями и правами
Maks 07.04.2026
1. Контроль срока действия договора Алгоритм из решения ниже реализован на примере нетипового документа "ЗаявкаНаРаботу", разработанного в конфигурации КА2. Задача: уведомлять пользователя, если. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru