2009-11-18 6 views
0

다음 코드를 사용하여 콤보 상자를 채 웁니다. 그 안에 실제 열 값 대신 System.Data.DataRowView가 표시됩니다. 내가 누락 된 것?ComboBox가 올바르게 채워지지 않음

 string Query = "SELECT institutename FROM institutemaster"; 
     DataSet ds = new DataSet(); 
     MySqlDataAdapter da = new MySqlDataAdapter(Query, ConnectionClass.CN); 
     da.Fill(ds, "Institutes"); 
     cmbInstitutes.DataSource = ds.Tables["Institutes"]; 

답변

2

당신은 DisplayMemberValueMember 속성을 설정해야 할 수도 있습니다 : 그것은 ASP.NET 응용 프로그램입니다

cmbInstitutes.DisplayMember = "NameOfTheColumnForText"; 
cmbInstitutes.ValueMember = "NameOfTheColumnForValues"; 

또는 DataValueFieldDataTextField합니다.

+0

같은 ComboBox에서 두 개의 열을 채우고 싶다면 어떻게해야합니까? – RKh

+0

계산 된 열을 추가합니다. http://ondotnet.com/pub/a/dotnet/2003/05/26/datacolumn_expressions.html –

1

다음 코드를 사용하여 동일한 콤보 상자에 두 개의 열을 채울 수 있습니다.

string Query = "SELECT (institutename +', '+city) as Institute FROM institutemaster"; 
DataSet ds = new DataSet(); 
MySqlDataAdapter da = new MySqlDataAdapter(Query, ConnectionClass.CN);   
da.Fill(ds, "Institutes");  
cmbInstitutes.DataSource = ds.Tables["Institutes"]; 
cmbInstitutes.DisplayMember = "Institute"; 
cmbInstitutes.ValueMember = "Institute"; 
관련 문제