2016-05-12 5 views
0

Помощь! Я пытаюсь заполнить список с элементами из моей базы данных с помощью оператора sql, я не уверен, как исправить эту ошибку, поскольку она продолжает расти. Моя база данных содержит только две даты, но мне нужно, чтобы она расширялась в будущем, следовательно, база данных для хранения дат.ошибка! - Невозможно связать с новым элементом отображения

Public ds As New DataSet 
Public con As New OleDb.OleDbConnection 'used to connect to the database 
Public provider As String = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source =" 
Public datafile As String = "Resources/database.accdb" 'database location and version 
Public da As OleDb.OleDbDataAdapter 
Public sqlstatement As String 


ds.Clear() 
    con.ConnectionString = connString 
    con.Open() 
    sqlstatement = "SELECT ShowDate FROM AvailableDates" 
    da = New OleDb.OleDbDataAdapter(sqlstatement, con) 
    da.Fill(ds, "Dates") 

    lbxDates.DisplayMember = "ShowDate" 
    lbxDates.DataSource = ds 
    lbxDates.ValueMember = "ShowDate" 
    con.Close() 

Ошибка «Не удается выполнить привязку к новому члену дисплея» происходит на

lbxDates.ValueMember = "ShowDate" line 
+0

так, как вы используете свой ответ в коде и вы не отмечаете ответ, как решить вашу проблему? http://stackoverflow.com/questions/37187867/error-object-reference-not-set-to-an-instance-of-an-object#37187867 –

+0

Мне жаль, как я это делаю? – chandler

+0

В левой части ответа вы найдете значок, щелкните по нему, спасибо –

ответ

2

Вы должны влиять на DataSource первый:

lbxDates.DataSource = ds.tables("Dates") 
    lbxDates.DisplayMember = "ShowDate" 
    lbxDates.ValueMember = "ShowDate" 
+0

Вы видите знак «√» в левой части ответа? Пожалуйста, отметьте его для других пользователей –

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