Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Разработка Windows Forms > Как привязать SelectedIndex ComboBox к полю таблиц


Автор: vinvin1 10.5.2007, 14:01
Как сделать связать SelectedIndex со значением поля базы данных?

В IDE устанавливаю значения, после которых в InitilizeComponent генерируется следующее:

 
Код

           this.statusComboBox.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
            this.statusComboBox.FormattingEnabled = true;
            this.statusComboBox.Items.AddRange(new object[] {
            "Пользователь",
            "Администратор"});



В Load формы дописываю:

Код

 statusComboBox.DataBindings.Add("SelectedIndex", dasiaDataSet, "users.status");



Вроде все правильно, и при изменении SelectedIndex должно меняться поле. Но это не так. В чем проблема? И почему в IDE в свойствах ComboBox в списке DataBindings нет SelectedIndex?

Автор: Gelis 16.5.2007, 12:18
Насколько я понял вы хотите поместить данные в ComboBox из таблицы. ОБычно делаю это следующими двумя способами:
Код

DataTable dt=new DataTable();
oleDbDataAdapter1.Fill(dt);
comboBox1.DataSource=dt;
comboBox1.DisplayMember="Имя_отображаемого_поля";
comboBox1.ValueMember="Имя_поля_для_индекса";

Код

SqlCommand command=connection.CreateCommand();
command.CommandText="SELECT Чего-то FROM Где-то WHERE при_условии";
SqlDataReader reader=command.ExecuteReader();
while(reader.Read())
{
comboBox1.Items.Add(reader.GetString(номер_нужного_столбца_в_запросе));
}            

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)