2010-06-29 6 views
1

Использование VS2005 с C#Заполните значение таблицы в combobox

Я хочу заполнить выпадающий список, используя значение таблицы.

Код

OdbcConnection con = new OdbcConnection(); 
    OdbcCommand cmd; 

con.ConnectionString =       ""; 
     con.Open(); 
     cmd = new OdbcCommand("Select no from table", con); 
     ada = new OdbcDataAdapter(cmd); 
     ds = new DataSet(); 
     ada.Fill(ds); 
     combobox1.Items.Add(ds); 

Но значений не нагружали в выпадающем списке, то, что случилось с моим вышеупомянутым кодом.

может любой обеспечить решение для probelm ....

ответ

0

Вы сделать есть что-то в реальной строке подключения, не так ли?

Вы загружаете свои данные в DataSet - это коллекция таблиц и отношений. Каким образом combobox должен знать, какие данные таблицы отображать? Если в DataSet есть несколько таблиц, вам необходимо дополнительно определить, какой из них использовать. Если у DataSet есть только одна таблица внутри, то это пустая трата ресурсов, чтобы использовать DataSet в первую очередь.

Если у вас есть только один набор данных, используйте вместо DataTable:

con.Open(); 
cmd = new OdbcCommand("Select no from table", con); 
ada = new OdbcDataAdapter(cmd); 
DataTable data = new DataTable(); 
ada.Fill(data); 

// define the column to be used to display text in the combobox 
combobox1.DataTextField = "FirstName"; 
// define the column to be used as the value for the selection in the combobox 
combobox1.DataValueField = "CustomerID"; 

combobox1.DataSource = data; 
combobox1.DataBind(); 
+0

В выпадающем списке показаны System.Data.Datarowview вместо значения – Gopal

+0

@Gopal: обновил свой ответ с двумя дополнительными заданиями –

+0

@ marc есть поле datatextfield n datavaluefield в combobox – buddy

Смежные вопросы