Nganku Junior Ответов: 1

Как установить источник данных для двух комбинированных блоков в одной и той же форме из двух столбцов одной и той же таблицы


Я разработал приложение Windows form с двумя comboboxes. Я хочу, чтобы combobox1 брал свое содержимое из столбца с именем " Type "в таблице" BIn", а combobox2 брал свое содержимое из столбца с именем" PN "в таблице"BIn". Я уже решил случай с одним входом,но это двойной вход.Кажется, я не могу успешно расширить решение с одним входом.

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

общественная Б()
{
метод InitializeComponent();

SqlConnection con = new SqlConnection ("источник данных=PV10\ \ LOCALSERVER;начальный каталог=SmallSoftwareDB;Интегрированная безопасность=True;пул = False");
против.Открыть();
строка sPn = " select PN from BIn";
string sTp = " select Type from BIn";
SqlCommand CsPn = new SqlCommand(sPn, con);
Sqlcommand, который Кпнт = новая команда sqlcommand(СТП, кон);

Класс sqldatareader МЛУ;
Sqldatareader CmDr;
МДР = ЦСПН.Метода executereader();

пока (МЛУ.Читать())
{
comboBox2.Items.Добавить (mDr ["PN"].Метод toString());
}

using (SqlDataAdapter da = new SqlDataAdapter(CsTp))
{
DataTable dt = новый DataTable();
да.Заполнить(ДТ);
comboBox1. DataSource = dt;
comboBox1. DisplayMember = " тип";
}
}

1 Ответов

Рейтинг:
6

Karthik_Mahalingam

попробовать это

string query = "select PN,Type from BIn";
           SqlCommand cmd = new SqlCommand(query, con);
           SqlDataAdapter da = new SqlDataAdapter(cmd);
           DataTable dt = new DataTable();
           da.Fill(dt);
           comboBox1.DisplayMember = "Type";
           comboBox1.DataSource = dt;
           comboBox2.DisplayMember = "PN";
           comboBox2.DataSource = dt;


Nganku Junior

Благодаря Karthik ваш код работает как заклинание. Пять тебе 🙋

Karthik_Mahalingam

добро пожаловать Нганку
но вы не дали 5★ ;)