2012-05-04 4 views
0

Почему я не могу привязывать значение к выпадающему списку? Он всегда возвращает сообщение: DataBinding: 'System.Data.DataRowView' does not contain a property with the name 'Name'.Не удается привязать значение к раскрывающемуся списку

У меня есть DropDownList:

<asp:DropDownList ID="Parameter_Dropdownlist" runat="server"> 
</asp:DropDownList> 

Тогда на код-за:

If myCEConnection.State = ConnectionState.Closed Then 
    Try 
     myCEConnection.Open() 
    Catch 
     Return 
    End Try 
End If 

Dim reader As SqlCeDataReader 
Dim myCommand As SqlCeCommand = myCEConnection.CreateCommand() 

myCommand.CommandText = "SELECT Name, Code FROM Room" 
reader = myCommand.ExecuteReader() 

DT.Load(reader) 

DDL.DataSource = DT 
DDL.DataTextField = DT.Columns("Name").ColumnName.ToString() 
DDL.DataValueField = DT.Columns("Code").ColumnName.ToString() 
DDL.DataBind() 

myCEConnection.Close() 

Как я могу связать ценность для DropDownList? Пожалуйста помоги. Большое спасибо.

ответ

1

Попробуйте это, добавив пример: -

If myCEConnection.State = ConnectionState.Closed Then 
    Try 
     myCEConnection.Open() 
    Catch 
     Return 
    End Try 
End If 

Dim reader As SqlCeDataReader 
Dim myCommand As SqlCeCommand = myCEConnection.CreateCommand() 

myCommand.CommandText = "SELECT Name, Code FROM Room" 
reader = myCommand.ExecuteReader() 

DT.Load(reader) 

DDL.DataSource = DT 
DDL.DataTextField = DT.Columns(0).ColumnName.ToString() 
DDL.DataValueField = DT.Columns(1).ColumnName.ToString() 
DDL.DataBind() 

myCEConnection.Close() 
+0

Привет, спасибо за решение! Оно работает! :) –