Заполнение Combobox и проверка данных из БД MSSQL
В БД имеется таблица с паролями. Делаю форму авторизации, кроме того мне нужны еще дополнительные поля выдернуть из этой таблицы и присвоить их значение переменным дальнейшей работы. Сейчас если загрузка данных в Combobox происходит из БД то переменные остаются пустыми. Если же я в коллецию добавляю данные, то все отлично работает все сохраняется.
private void Form1_Load(object sender, EventArgs e)
{
sqlConn.Open();
SqlCommand cmd = sqlConn.CreateCommand();
cmd.CommandText = "select * from Employees";
dbTable = new DataTable();
dbAdp = new SqlDataAdapter(cmd);
dbAdp.Fill(dbTable);
this.comboBox1.DataSource = dbTable;
this.comboBox1.DisplayMember = "login";// столбец для отображения
this.comboBox1.ValueMember = "empid";//столбец с id
this.comboBox1.SelectedIndex = -1;
}
private void button1_Click(object sender, EventArgs e)
{
SqlCommand cmd = sqlConn.CreateCommand();
cmd.CommandType = CommandType.Text;
cmd.CommandText = "select login from Employees where login = '" + comboBox1.SelectedItem.ToString() + "'and password= '" + textBox1.Text + "'";
dbTable = new DataTable();
dbAdp = new SqlDataAdapter(cmd);
Office = (string)cmd.ExecuteScalar();
cmd.CommandType = CommandType.Text;
cmd.CommandText = "select kassir from Employees where login = '" + comboBox1.SelectedItem.ToString() + "'and password= '" + textBox1.Text + "'";
kassir = (string)cmd.ExecuteScalar();
dbAdp.Fill(dbTable);
label1.Text = kassir;
sqlConn.Close();
}
Вот что хотелось бы в итоге.
Загрузить в combobox столбец с логинами при загрузке формы. При нажатии на кнопку проверить пароль. и вытащить значения login и kassir в соответствии с выбором в комбо. Еще раз повторюсь. Если создавать коллекцию комбо то все отлично работает. Все переменные передаются. А если при загрузке формы загружать из бд то при нажатии кнопки переменные пустые. подскажите что делать?
