mi sa che devi dirgli quali sono i campi DataTextField e DataValueField. (E mi sa anche DataMember ["Tabella"])
E fare poi il Databind().
un altro modo, con gli items costruiti uno per uno, un esempio c#
codice:
Public Shared Sub DropDownFill_SP(ByVal dropdown As System.Web.UI.WebControls.DropDownList, ByVal nomestored As String, ByVal parametri As System.Data.SqlClient.SqlParameter(), ByVal nomecampotext As String, ByVal nomecampovalue As String)
Dim db As New Database.SqlTools
Dim dtable As New DataTable
Try
dtable = db.EseguiStoredConParametri_Datatable(nomestored, parametri)
' Aggiungo gli items
Dim indicielementi As Integer = 0
For Each riga As DataRow In dtable.Rows
Dim itemdrop As New ListItem
If Not IsDBNull(riga(nomecampotext)) Then
itemdrop.Text = riga(nomecampotext)
End If
If Not IsDBNull(riga(nomecampovalue)) Then
itemdrop.Value = riga(nomecampovalue)
End If
dropdown.Items.Insert(indicielementi, itemdrop)
indicielementi += 1
Next
Catch ex As Exception
Throw ex
End Try
End Sub
Database.SqlTools era una mia classe