Aby powiązać DataTable
do DataGridView
Twój kod wystarczy zmienić na
public void read()
{
try
{
using(OracleConnection conn = new OracleConnection("....."))
using(OracleCommand cmd = new OracleCommand("select * from t1", conn))
{
conn.Open();
using(OracleDataReader reader = cmd.ExecuteReader())
{
DataTable dataTable = new DataTable();
dataTable.Load(reader);
dataGridView1.DataSource = dataTable;
}
}
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
}
OracleDataReader można przekazać do metody Load DataTable, a następnie tabela jest gotowa do powiązania z właściwością DataGridView DataSource. Dodałem również kilka instrukcji użytkowania, aby zapewnić prawidłowe usuwanie używanych przedmiotów jednorazowego użytku. (W szczególności OracleConnection jest bardzo drogi, którego nie można zamknąć w przypadku wyjątków)