Cómo: Agregar los botones Cargar, Guardar y Cancelar al control BindingNavigator de formularios Windows Forms

El control BindingNavigator es un control ToolStrip de propósito especial pensado para navegar y manipular controles enlazados a datos en el formulario.

Dado que es un control ToolStrip, el componente BindingNavigator se puede modificar con facilidad para incluir comandos adicionales o alternativos para el usuario.

En el procedimiento siguiente, el control TextBox está enlazado a datos, y el control ToolStrip que se agrega al formulario se modifica para incluir los botones Cargar, Guardar y Cancelar.

Para agregar los botones Cargar, Guardar y Cancelar al componente BindingNavigator

  1. Agregue el control TextBox al formulario.

  2. Enlácelo a un BindingSource, que se enlaza a un origen de datos. En este ejemplo, BindingSource se enlaza a una base de datos.

  3. Después de generar el conjunto de datos y el adaptador de la tabla, arrastre un control BindingNavigator hacia el formulario.

  4. Establezca la propiedad BindingSource del control BindingNavigator en BindingSource en el formulario que se enlaza a los controles.

  5. Seleccione el control BindingNavigator.

  6. Haga clic en el glifo de la etiqueta inteligente (Glifo de etiqueta inteligente) para que aparezca el cuadro de diálogo Tareas de BindingNavigator y seleccione Editar elementos.

    Aparecerá el Editor de la colección de elementos.

  7. En el Editor de la colección de elementos, complete lo siguiente:

    1. Agregue un ToolStripSeparator y tres elementos ToolStripButton seleccionando el tipo adecuado de ToolStripItem y haciendo clic en el botón Agregar.

    2. Establezca la propiedad Name de los botones enLoadButton,SaveButton yCancelButton, respectivamente.

    3. Establezca la propiedad Text de los botones en Load, Save yCancel.

    4. Establezca la propiedad DisplayStyle para cada uno de los botones en Text. Otra opción es establecer esta propiedad enImageoImageAndTexty establecer la imagen para que aparezca en la propiedad Image.

    5. Haga clic en Aceptar para cerrar el cuadro de diálogo. Los botones se agregan a ToolStrip.

  8. Haga clic con el botón secundario del mouse en el formulario y elija Ver código.

  9. En el Editor de código, busque la línea de código que carga los datos en el adaptador de la tabla. Este código se generó cuando configuró el enlace de datos en el paso 2. El código puede ser similar al siguiente: TableAdapterName.Fill(DataSetName.TableName) Probablemente estará en el evento Load del formulario.

  10. Cree un controlador de eventos para el evento Click delToolStripButtonLoad que creó anteriormente y pásele todo el código de carga de datos.

    El código ahora debe ser similar al siguiente:

    [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. Cree un controlador de eventos para el evento Click del T:System.Windows.Forms.ToolStripButtonSave que creó anteriormente y escriba código para actualizar los datos de la tabla a la que está enlazado el control.

    [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);
    }
    

    Nota

    En algunos casos, el componente BindingNavigator ya tendrá un botónGuardar, pero el Diseñador de Windows Forms no habrá generado ningún código. En este caso, puede colocar el código anterior en el controlador de eventos Click para ese botón, en lugar de crear un botón totalmente nuevo en ToolStrip. Sin embargo, el botón está deshabilitado de forma predeterminada, por tanto debe establecer la propiedad Enabled del botón en true para que el botón funcione correctamente.

  12. Cree un controlador de eventos para el evento Click delToolStripButtonCancel que creó anteriormente y escriba código para cancelar los cambios del registro de datos que aparece.

    [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();
    }
    

    Nota

    El método CancelEdit está en el ámbito de la fila de datos. Guarde los cambios que haya realizado al ver el registro concreto antes de navegar hasta el registro siguiente.

Vea también

Referencia

Información general sobre el componente BindingSource

BindingNavigator

BindingSource

ToolStrip

Otros recursos

BindingNavigator (Control, formularios Windows Forms)