Поделиться через


Практическое руководство. Добавление кнопок загрузки, сохранения и отмены в элемент управления BindingNavigator в формах Windows Forms

Элемент управления BindingNavigator является специализированным элементом управления ToolStrip, который предназначен для навигации и управления привязанными к данным элементами управления формы.

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

В следующей процедуре элемент управления TextBox привязан к данным, а добавленный в форму элемент управления ToolStrip дополнен кнопками загрузки, сохранения и отмены.

Чтобы добавить кнопки загрузки, сохранения и отмены в элемент BindingNavigator

  1. Добавьте элемент управления TextBox на форму.

  2. Привяжите его к классу BindingSource, который привязан к источнику данных. Для этого примера класс BindingSource привязан к базе данных.

  3. Когда таблица данных и адаптер таблиц будут сгенерированы, перетащите элемент управления BindingNavigator на форму.

  4. На форме, привязанной к элементам управления, присвойте свойству BindingSource элемента управления BindingNavigator значение BindingSource.

  5. Выберите элемент управления BindingNavigator.

  6. Щелкните глиф смарт-тега (Глиф смарт-тэга), чтобы появилось диалоговое окно Задачи BindingNavigator, и выберите пункт Изменение элементов.

    Появится окно Редактор коллекции элементов.

  7. В окне Редактор коллекции элементов выполните следующие действия:

    1. Добавьте ToolStripSeparator и три элемента ToolStripButton, выбрав соответствующий тип элемента ToolStripItem и нажав кнопку Добавить.

    2. Присвойте свойству кнопок Name соответственно значенияLoadButton,SaveButtonи CancelButton.

    3. Присвойте свойству кнопок Text значенияЗагрузить, Сохранитьи Отмена.

    4. Присвойте свойству DisplayStyle каждой кнопки значениеText. Также можно присвоить этому свойству значениеImageилиImageAndTextи задать отображаемое изображение в свойстве Image.

    5. Нажмите кнопку ОК, чтобы закрыть диалоговое окно. Кнопки будут добавлены в класс ToolStrip.

  8. Щелкните форму правой кнопкой мыши и выберите команду Просмотреть код.

  9. В редакторе кода найдите строку, которая загружает данные в адаптер таблиц. Этот код был сгенерирован при установки привязки данных в этапе 2. Код должен иметь следующий вид: TableAdapterName.Fill(DataSetName.TableName). Наиболее вероятно, что он будет в событии формы Load.

  10. Создайте обработчик события Click для кнопки T:System.Windows.Forms.ToolStripButtonЗагрузить, созданной ранее, и переместите этот код загрузки данных в обработчик.

    Теперь код должен выглядеть примерно следующим образом.

    [Visual Basic]

    Private Sub LoadButton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles LoadButton.Click
        TableAdapterName.Fill(DataSetName.TableName)
    End Sub
    

    [C#]

    private void LoadButton_Click(System.Object sender, 
        System.EventArgs e)
    {
        TableAdapterName.Fill(DataSetName.TableName);
    }
    
  11. Создайте обработчик события Click для кнопки ToolStripButtonСохранить, созданной ранее, и напишите код для обновления данных в таблице, к которой привязан элемент управления.

    [Visual Basic]

    Private Sub SaveButton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles SaveButton.Click
        TableAdapterName.Update(DataSetName.TableName)
    End Sub
    

    [C#]

    private void SaveButton_Click(System.Object sender, 
        System.EventArgs e)
    {
        TableAdapterName.Update(DataSetName.TableName);
    }
    

    Примечание

    В некоторых случаях компонент BindingNavigator уже содержит кнопкуСохранить, но код, сгенерированный конструктором Windows Forms, при этом отсутствует.В этом случае приведенный выше код можно поместить в Click обработчик событий кнопки, вместо создания полностью новой кнопки ToolStrip.Однако кнопка по умолчанию отключена, так что свойству Enabled кнопки необходимо присвоить значение true, чтобы кнопка работала правильно.

  12. Создайте обработчик события Click для кнопкиToolStripButtonОтмена, созданной ранее, и напишите код для отмены любых изменений отображаемой записи данных.

    [Visual Basic]

    Private Sub CancelButton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CancelButton.Click
        BindingSourceName.CancelEdit()
    End Sub
    

    [C#]

    private void CancelButton_Click(System.Object sender, System.EventArgs e)
    {
        BindingSourceName.CancelEdit();
    }
    

    Примечание

    Метод CancelEdit распространяется на строку данных.Сохраните все изменения, сделанные при просмотре этой отдельной записи, до перехода к следующей записи.

См. также

Ссылки

Общие сведения о компоненте BindingSource

BindingNavigator

BindingSource

ToolStrip

Другие ресурсы

Элемент управления BindingNavigator (Windows Forms)