У меня есть функция для извлечения данных из базы данных через набор данных
public DataSet getDataSet(string query)
{
DataSet ds = new DataSet();
OleDbDataAdapter da1 = new OleDbDataAdapter(query, sybaseconn);
OleDbCommand cmd1 = new OleDbCommand(query, sybaseconn);
cmd1.CommandType = CommandType.StoredProcedure;
da1.SelectCommand = cmd1;
da1.Fill(ds, "tbl");
da1.Dispose();
da1 = null;
SybaseconnClose();
return ds;
}
Это отлично работает. Выбранные столбцы: «Nr» и «Remark»
Я вызываю эту функцию в следующей функции.
Мое представление данных будет связано с набором данных.
private void LoadData()
{
dataGridView1.DataSource = null;
Application.DoEvents();
TTT3Dal awdal = new TTT3Dal();
DataSet dsAWIA = awdal.getDataSet("select_tbl");
awdal.dsTTT3 = dsAWIA;
dataGridView1.DataSource = dsAWIA.Tables["tbl"].DefaultView;
bindingSource1.DataMember = "tbl";
//dataGridView1.DataBindings.Add("Text", bindingSource1, "nr");
}
Это тоже хорошо работает.
В форме я вызываю последнюю функцию и bindingNavigator.
public Form1()
{
InitializeComponent();
LoadData();
bindingNavigator1.BindingSource = bindingSource1;
}
Работает нормально, НО, если я раскомментирую эту строку
//dataGridView1.DataBindings.Add("Text ", bindingSource1," nr ");
Я получаю эту ошибку
Невозможно выполнить привязку к свойству или столбцу nr в источнике данных.
Имя параметра: dataMember
Я попытался решить эту проблему, добавив строку
dataGridView1.DataMember = "tbl";
Но тогда я получаю ошибку
Невозможно создать дочерний список для поля tbl.
Может ли кто-нибудь помочь мне решить эту проблему и помочь мне связать обзор данных с привязывающим навигатором