Форум программистов, компьютерный форум, киберфорум
C#: Базы данных, ADO.NET
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.64/11: Рейтинг темы: голосов - 11, средняя оценка - 4.64
0 / 0 / 0
Регистрация: 22.05.2018
Сообщений: 24
1
MS SQL

Заполнить ComboBox значениями из столбца БД

22.05.2018, 03:18. Показов 2190. Ответов 6
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Здравствуйте!

Мне необходимо заполнить ComboBox данными из БД mssql.

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

Подключала БД таким образом:

C#
1
2
SqlConnection cnn = new SqlConnection();
cnn.ConnectionString = @"Data Source=ANASTCIA;Initial Catalog=TEST;Integrated Security=True";
Объявила объекты:

C#
1
2
3
        DataSet ds = new DataSet();
        SqlDataAdapter daВидИзделия = new SqlDataAdapter();
        DataView dvВидИзделия = new DataView();
А что дальше? И так ли вообще?

А дальше необходимо, чтобы исходя из значения первого ComboBox, зависело значение второго
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
22.05.2018, 03:18
Ответы с готовыми решениями:

Заполнение ComboBox значениями из столбца БД
Помогите заполнить ComboBox! Запросом я выбираю столбец из БД. Вот по нему и должен происходить...

Заполнение ComboBox значениями из столбца БД
Помогите заполнить ComboBox. При открытие формы у меня должен быть заполнен ComboBox данными из...

Заполнить ComboBox значениями двух столбцов
подскажите как можно сделать вопрос по сабжу? всё что нашел в инете это прибиндивание к комбобоксу...

Как заполнить ComboBox значениями из столбцы БД
using System; using System.Windows.Forms; using System.Data; using System.DirectoryServices;...

6
20 / 35 / 14
Регистрация: 08.10.2015
Сообщений: 406
22.05.2018, 12:11 2
C#
1
2
3
4
5
6
7
8
9
10
11
12
                string query = "select s_id as Sid, s_fio as Sfio from dbo.Sotrudnik order by s_fio ";
                SqlCommand command = new SqlCommand(query, sqlcon);
                DataTable table = new DataTable();
 
                SqlDataAdapter adapter = new SqlDataAdapter(command);
                adapter.Fill(table);
                comboBox1.DisplayMember = "Sfio";
               comboBox1.ValueMember = "Sid";
 
                BindingSource bs0 = new BindingSource();
                bs0.DataSource = table;
                comboBox1.DataSource = bs0;
0
360 / 287 / 76
Регистрация: 21.06.2016
Сообщений: 1,115
22.05.2018, 13:32 3
Aumi, вопрос - вот есть методичка, которая учит писать то, что Вы написали в 10-12 строчках? Зачем? почему не сделать
C#
1
comboBox1.DataSource = table;
И весь код на этих 3-ех строчках выкинуть?
Ну т.е. я знаю, что такое биндинг, пользуюсь им часто очень, но его логика не та, которую Вы предлагаете использовать. Логика биндинга - отделить модель от формы, и так же модель от источника, сделать их независимыми, в грубом понимании слова. Посмотрите в сторону MVP/MVC/MVVI - вот там нужен биндинг, там без него очень тяжело. А в Вашем случае - это бесполезная трата ресурсов, и не более того.
1
0 / 0 / 0
Регистрация: 22.05.2018
Сообщений: 24
22.05.2018, 14:16  [ТС] 4
hoolygan, т.е можно без биндинга? просто я его не использовала раньше.

Table - вместо этого писать имя моей таблицы?
0
20 / 35 / 14
Регистрация: 08.10.2015
Сообщений: 406
22.05.2018, 14:27 5
hoolygan, действительно. Попробовала у себя. спасибо
1
0 / 0 / 0
Регистрация: 22.05.2018
Сообщений: 24
22.05.2018, 14:58  [ТС] 6
Aumi
Ура, работает!
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
            SqlConnection cnn = new SqlConnection();
            cnn.ConnectionString = @"Data Source=ANASTCIA;Initial Catalog=ЦКБА;Integrated Security=True";
 
 
            string query = "select * from Вид_Изделия";
            SqlCommand command = new SqlCommand(query, cnn);
            DataTable table = new DataTable();
 
            SqlDataAdapter adapter = new SqlDataAdapter(command);
            adapter.Fill(table);
            comboBox1.DisplayMember = "НаименованиеВида";
            comboBox1.DataSource = table;
            comboBox1.SelectedIndex = -1;
А как теперь сделать, чтобы изсодя из этого комбо бокса, зависело значение второго?
0
360 / 287 / 76
Регистрация: 21.06.2016
Сообщений: 1,115
22.05.2018, 15:01 7
AnastasiiaSwan, Всё уже давным-давно разжевано. Вот тут в FAQ очень доходчиво расписано, как делать зависимые таблицы. Смотреть всё, в Вашем случае немного напильником подпилить 3-ий пункт.
0
22.05.2018, 15:01
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
22.05.2018, 15:01
Помогаю со студенческими работами здесь

заполнить comboBox значениями из ini
На форме находится элемент comboBox (абсолютно пустой, без строк). Как поместить в него строки из...

Заполнить ComboBox уникальными значениями
Добрый день . На форме есть комбобокс. В комбобоксе отображаются данные с БД Access. В списке...

Заполнить ComboBox значениями из листа
Как заполнить ComboBox значениями из листа и\или внести сам лист(его название) в ComboBox?

Заполнить combobox значениями перечислимого типа
Допустим есть TCommonAVI = (aviNone, aviFindFolder, aviFindFile, aviFindComputer, aviCopyFiles,...


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru