Como adicionar botões Carregar, Salvar e Cancelar ao controle BindingNavigator dos Windows Forms
O BindingNavigator controle é um controle de finalidade ToolStrip especial destinado a navegar e manipular controles em seu formulário que estão associados a dados.
Por ser um ToolStrip controle, o BindingNavigator componente pode ser facilmente modificado para incluir comandos adicionais ou alternativos para o usuário.
No procedimento a seguir, um TextBox controle é vinculado a dados e o ToolStrip controle adicionado ao formulário é modificado para incluir os botões carregar, salvar e cancelar.
Adicionar botões carregar, salvar e cancelar ao componente BindingNavigator
No Visual Studio, adicione um TextBox controle ao formulário.
Associe-o a um BindingSource, que está vinculado a uma fonte de dados. Para este exemplo, o BindingSource está vinculado a um banco de dados.
Depois que o conjunto de dados e o adaptador de tabela forem gerados, arraste um BindingNavigator controle para o formulário.
Defina a BindingNavigator propriedade do BindingSource controle como BindingSource no formulário que está associado aos controles.
Selecione o controle BindingNavigator.
Clique no glifo de ações do designer () para que a caixa de diálogo Tarefas do BindingNavigator seja exibida e selecione Editar itens.
O Editor de Coleção de Itens aparece.
No Editor de Coleção de Itens, faça o seguinte:
Adicione a ToolStripSeparator e três ToolStripButton itens selecionando o tipo apropriado de ToolStripItem e clicando no botão Adicionar .
Defina a Name propriedade dos botões como LoadButton, SaveButton e CancelButton, respectivamente.
Defina a Text propriedade dos botões como Carregar, Salvar e Cancelar.
Defina a DisplayStyle propriedade de cada um dos botões como Texto. Como alternativa, você pode definir essa propriedade como Image ou ImageAndText e definir a imagem a ser exibida na Image propriedade.
Clique em OK para fechar a caixa de diálogo. Os botões são adicionados ao ToolStrip.
Clique com o botão direito do mouse no formulário e escolha Exibir Código.
No Editor de Códigos, localize a linha de código que carrega dados no adaptador de tabela. Esse código foi gerado quando você configura a vinculação de dados na etapa 2. O código deve ser semelhante ao seguinte:
TableAdapterName.Fill(DataSetName.TableName)
. Provavelmente será no evento do Load formulário.Crie um manipulador de eventos para o Click evento do LoadToolStripButton que você criou anteriormente e mova esse código de carregamento de dados para ele.
Agora, seu código deve ser semelhante ao seguinte:
Private Sub LoadButton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles LoadButton.Click TableAdapterName.Fill(DataSetName.TableName) End Sub
private void LoadButton_Click(System.Object sender, System.EventArgs e) { TableAdapterName.Fill(DataSetName.TableName); }
Crie um manipulador de eventos para o Click evento do SaveToolStripButton que você criou anteriormente e escreva código para atualizar os dados dentro da tabela à qual o controle está associado.
Private Sub SaveButton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles SaveButton.Click TableAdapterName.Update(DataSetName.TableName) End Sub
private void SaveButton_Click(System.Object sender, System.EventArgs e) { TableAdapterName.Update(DataSetName.TableName); }
Observação
Em alguns casos, o BindingNavigator componente já tem um botão Salvar , mas nenhum código foi gerado pelo Designer de Formulários do Windows. Nesse caso, você pode colocar o código anterior no manipulador de Click eventos para esse botão, em vez de criar um botão totalmente novo no ToolStrip. No entanto, o botão está desabilitado por padrão, portanto, você deve definir a Enabled propriedade do botão para
true
que o botão funcione corretamente.Crie um manipulador de eventos para o Click evento do CancelToolStripButton que você criou anteriormente e escreva o código para cancelar todas as alterações no registro de dados exibido.
Private Sub CancelButton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CancelButton.Click BindingSourceName.CancelEdit() End Sub
private void CancelButton_Click(System.Object sender, System.EventArgs e) { BindingSourceName.CancelEdit(); }
Observação
O CancelEdit método tem como escopo a linha de dados. Salve as alterações feitas ao exibir um registro individual antes de navegar até o próximo registro.
Confira também
.NET Desktop feedback