Обычно я заполняю comoboBox этот путь:Как получить SelectedValue из CombBox с автозаполнением?
combo.DataSource = dt;
combo.ValueMember = "id";
combo.DisplayMember = "name";
и легко я могу получить выбранное значение с этим кодом
int i = convert.toint(combo.selectedValue);
, но после того, как я использую автозаполнение я не могу получить его:
con = new SqlConnection(@"Data Source=.\sqlexpress;Initial Catalog=ACDB;Integrated Security=True;Pooling=False");
da = new SqlDataAdapter("SELECT id, name from usersTBL", con);
da.Fill(dt);
AutoCompleteStringCollection datasource = new AutoCompleteStringCollection();
for (int i = 0; i < dt.Rows.Count; i++)
{
datasource.Add(dt.Rows[i][1].ToString());
}
this.comboSearch.AutoCompleteCustomSource = datasource;
this.comboSearch.AutoCompleteSource = AutoCompleteSource.CustomSource;
this.comboSearch.AutoCompleteMode = AutoCompleteMode.SuggestAppend;
this.comboSearch.DataSource = dt;
this.comboSearch.DisplayMember = "name";
this.comboSearch.ValueMember= "id";
Теперь, если я вручную выберу элемент из comboBox, я могу получить SelectedValue, но если я использую auto complete, я не могу. Я хочу получить SelectedValue при поиске выбранного элемента из ComboBox.
да я сделал это, но в мой код, его только моя ошибка записи –
* Когда * вы проверяете свойство SelectedValue? – LarsTech
Вы пробовали 'comboSearch.Text'? – NPras