ваш фрагмент кода выглядит хорошо. Я не вижу очевидной проблемы.
Попробуйте поставить точку останова в конце вашего метода и проверьте, содержит ли datatable строки, а строки содержат какие-либо значения в ItemArray.
Убедитесь, что ваш data_example
DataGridView для элемента управления AutoGenerateColumns = true
(по умолчанию) установлено значение *1006* (по умолчанию) и убедитесь, что для элемента управления data_example
DataGridView не определен другой источник данных. Этот код мне подходит.
private void Form1_Load(object sender, EventArgs e)
{
data_example.AutoGenerateColumns = true;
string strProvider = @"Provider = Microsoft.ACE.OLEDB.12.0; Data Source = c:\aaa\CinemaBooking.accdb";
string strSql = "Select * from Booking";
using (OleDbConnection con = new OleDbConnection(strProvider))
{
using (OleDbCommand cmd = new OleDbCommand(strSql, con))
{
using (OleDbDataAdapter da = new OleDbDataAdapter(cmd))
{
con.Open();
var scores = new DataTable();
da.Fill(scores);
data_example.DataSource = scores.DefaultView;
con.Close();
}
}
}
}
Возможно, вы можете попробовать заполнить набор данных адаптером, а затем использовать именованную таблицу в качестве источника данных:
var dtSet = new DataSet();
da.Fill(dtSet, "Booking");
data_example.DataSource = dtSet.Tables["Booking"].DefaultView;