Настройка bindingnavigator в visual studio

Обновлено: 06.07.2024

У меня есть приложение для обработки данных, в котором используется BindingNavigator. Я подключил навигатор к источнику привязки, но он не работает. Он не будет добавлять и удалять строки. Источник привязки: accountBindingSource. Я не понимаю, что не так. У меня такой код:

3 ответа

В своем вопросе вы присвоили данные accountGridView.DataSource . Так что ждать работы привязки навигатора не приходится. BindingSource не подключен к данным, а BindingNavigator и DataGridView не подключены к BindingSource.

Эти настройки следует выполнить с помощью конструктора или кода:

  • Загрузите данные и назначьте данные свойству DataSource объекта BindingSource . (Используя код)
  • Назначьте BindingSource свойству DataSource вашего DataGridView
  • Назначьте BindingSource свойству BindingSource объекта BindingNavigator .

Изменение запроса не имеет ничего общего с источником привязки. BindingSource и BindingNavigator работают независимо от адаптера или всего, что предоставляет / сохраняет данные. Ни BindingSource , ни BindingNavigator не знают, откуда на самом деле берутся данные и как они будут сохранены.

Кнопки BindingNavigator - это легкие элементы управления, в отличие от настоящего элемента управления Button.

Когда вы нажимаете любую кнопку в BindingNavigator, фокус не крадется из текущего элемента управления, и, таким образом, последовательность событий, которые приводят к передаче данных в базовую базу данных, никогда не вызывается.

Я знаю, что у меня был пример нескольких строк кода, которые вы должны были вставить в каждый из обработчиков Click этих легких кнопок, но пока не могу его найти.

Это всегда была ПИТА!

Я просто решил свою проблему, создав новый BindingSource и задав его свойства с помощью кода. Для этого просто перетащите BindingSource в форму. Назовите его как хотите. В кодовой части вашего решения введите что-то подобное (в конструкторе).

Убедитесь, что для BindingSource вашего BindingNavigator установлен только что созданный BindingSource. Всем спасибо за помощь!

РЕДАКТИРОВАТЬ: Я не знаю, связано ли это с моим решением, но я также немного отредактировал свои запросы. Этот код является обязательным для работы проекта.

при работе в wpf приложении при аналогичных действиях этой панели нет, появляется просто таблица с данными.
Eсть ли такая панель вообще в wpf или ее здесь нужно вручную описывать?

p.s. я новичек в wpf, поэтому заранее прошу прощения за, быть может, глупые вопросы!

заранее спасибо за ваши объективные ответы!


Индексация в BindingNavigator
Приветствую! Возникла проблемы с индексацией BindingNavigator. При добавлении новой строки.

BindingNavigator
Доброго дня. Создал простую WinForm для ввода контактных данных в локальную БД. При добавлении.

Bindingnavigator и datagridview
Есть локальная БД с двумя таблицами: Studenti и Prepodavateli. На форме 1 bindingnavigator и 2.

Обновление bindingnavigator
Всем привет! Случилась такая проблема,не могу найти решение. Написал программу для работы с БД.

к сожалению, в WPF нет такой удобной панели, сам как-то искал, не нашёл.
Есть решения-костыли, но они без привязки. Так что здесь лучше стиснув зубы сидеть на Windows Forms hamin, помог вам ответ demon521 через шесть с половиной лет после вопроса?

хаа)) эту тему я создавал еще тогда, когда шеф мне дал задание посмотреть что такое впф и с чем его едят! я еще тогда студентом был

Элд Хасп, я кстати подобную панельку реализовал таки в кастомном датагриде) правда кнопки командами привязывались Элд Хасп, к сожалению я сменил фирму и весь код остался там) на нынешней работе сделал пару подобных кнопок, как из отпуска выйду - скину сюда решение, если не забуду

Решение

приведу неполный код своего решения с помощью кастомного датагрида:

по умолчанию шаблон датагрида состоит из scrollviewer'a с 3 строками:
1 строка - заголовки таблицы
2 строка - прокручиваемый контент, т.е. сами строки
3 строка - горизонтальный ползунок для прокрутки.

этот шаблон я изменил путем добавления еще 2 строки перед заголовками таблицы. В первую строку я поместил панельку для размещения названия датагрида, а во вторую панель с кнопками тобишь BindingNavigator. Т.о. шаблон выглядит след. образом:
1 - название датагрида
2 - bindingNavigator
3 - заголовки таблицы
4 - прокручиваемый контент, т.е. сами строки
5 - горизонтальный ползунок для прокрутки.

ниже приведу код только тех мест, которые затрагивает данная тема) Саму панельку с кнопками я поместил в StackPanel с горизонтальной ориентацией. по умолчанию здесь кнопки вперед, назад по строкам, отображение кол-ва строк и добавление и удаление записей. Также есть возможность добавить дополнительный контент на панельку:

Можно ли привязать bindingNavigator ко всем dataGridView ? Все dataGridView находятся на одной форме и имеют один источник.

1 ответ 1

BindingNavigator также как и DataGridView привязывается к BindingSource .

Поэтому, если BindingSource (читайте источник данных) у всех DataGridView общий, то при привязке к нему BindingNavigator автоматически привяжется ко всем DataGridView .

Похожие

Для подписки на ленту скопируйте и вставьте эту ссылку в вашу программу для чтения RSS.

дизайн сайта / логотип © 2019 Stack Exchange Inc; пользовательское содержимое попадает под действие лицензии cc by-sa 4.0 с указанием ссылки на источник. rev 2019.11.15.35459

С появлением элемента управления BindingNavigator в Windows Forms разработчики получили возможность предоставлять конечным пользователям простой пользовательский интерфейс для перехода и управления данными в формах, которые они создают. The advent of the BindingNavigator control in Windows Forms enables developers to provide end users with a simple data navigation and manipulation user interface on the forms they create.

Каждой кнопке элемента управления BindingNavigator соответствует член компонента BindingSource, обеспечивающий ту же функциональность программным путем. For each button on the BindingNavigator control, there is a corresponding member of the BindingSource component that programmatically allows the same functionality. Например, кнопка MoveFirstItem соответствует методу MoveFirst компонента BindingSource, кнопка DeleteItem соответствует методу RemoveCurrent и т. д. For example, the MoveFirstItem button corresponds to the MoveFirst method of the BindingSource component, the DeleteItem button corresponds to the RemoveCurrent method, and so on. Таким образом, обеспечение перехода по данным с помощью элемента управления BindingNavigator — простая процедура, требующая присвоения свойству BindingSource соответствующего компонента BindingSource в форме. As a result, enabling the BindingNavigator control to navigate data records is a simple as setting its BindingSource property to the appropriate BindingSource component on the form.

Настройка элемента управления BindingNavigator To set up the BindingNavigator control

Добавьте компонент BindingSource с именем bindingSource1 и два элемента управления TextBox с именами textBox1 и textBox2 . Add a BindingSource component named bindingSource1 and two TextBox controls named textBox1 and textBox2 .

Добавьте элемент управления BindingNavigator с именем bindingNavigator1 в форму. Add a BindingNavigator control named bindingNavigator1 to your form.

Присвойте свойству BindingSource элемента bindingNavigator1 значение bindingSource1 . Set the BindingSource property for bindingNavigator1 to bindingSource1 . Это можно сделать с помощью конструктора или в коде. You can do this with the designer or in code.

Пример Example

В примере кода ниже полностью представлены предыдущие шаги. The following code example is the complete example for the steps listed previously.

Читайте также: