Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Разработка Windows Forms > bindingNavigator не перемещается курсор...


Автор: t0mmy4824 20.5.2011, 19:14
вопрос такой
у меня есть две формы..на первой форме у меня перечень товаров, по нажатии на товар, вылетает вторая форма с datagrid-ом..в ней весь перечень товаров по выбранному разделу

хочу подключить bindingNavigator чтоб можно было навигацию делать, вроде подключаю, вот код


Код

string connectString =
                "Data Source=BEST-160B50D696\\SQLEXPRESS;Initial Catalog=Kursova1;" +
                "Integrated Security=True";

            using (SqlConnection connection = new SqlConnection(connectString))
            {
                SqlDataAdapter dataAdapter1 =
                new SqlDataAdapter(new SqlCommand(sql , connection));

                DataSet ds = new DataSet();
                ds.Tables.Add(tabl);
                dataAdapter1.Fill(ds.Tables[tabl]);
                // Assign the DataSet as the DataSource for the BindingSource.
                BindingSource bs = new BindingSource();
                bs.DataSource = ds.Tables[tabl].DefaultView;
                bindingNavigator1.BindingSource = bs;
                dataGridView1.DataSource = ds.Tables[tabl].DefaultView;
                for (int i = 0; i < 2; i++)
                    dataGridView1.Columns[i].Frozen = true;
            }


переменная sql,tabl обьявлены глобально, я их задаю на первой форме таким способом
Код

f.sql = "SELECT *from Catalogs";
f.tabl = "Scanners";
f.Show();


собственно вопрос, запускаю программу, bindingNavigator активен, показывают правильно к-во записей, все работает...но когда клацаешь кнопки movenext.. в dataGridView не происходит никаких изменений...не выбираются обьекты..проверял...если например выбрать 2 запись и нажать удалить, она удаляется...
прикрепляю картинку чтоб было понятно.. 
заранее спасибо за помощь
user posted image





Автор: jonie 21.5.2011, 11:45
потому что ваш грид не привязан к BinsingSource, а привязан напрямик к данным. Соотвественно он никак не может подписаться на события BindingSource-а (изменение позиции Current):
Код

 dataGridView1.DataSource = ds.Tables[tabl].DefaultView;


установите его так:
Код

 dataGridView1.DataSource = bs;

Автор: t0mmy4824 21.5.2011, 12:29
ооо
получилось)
спасибо большое)

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)