BindingSource.ResetBindings(Boolean) Método

Definición

Hace que un control enlazado a BindingSource vuelva a leer todos los elementos de la lista y actualice los valores mostrados.

public:
 void ResetBindings(bool metadataChanged);
public void ResetBindings (bool metadataChanged);
member this.ResetBindings : bool -> unit
Public Sub ResetBindings (metadataChanged As Boolean)

Parámetros

metadataChanged
Boolean

Es true si ha cambiado el esquema de datos; es false si sólo han cambiado los valores.

Ejemplos

En el ejemplo de código siguiente se usa un BindingSource componente para enlazar una lista de matrices, que no proporciona notificación de cambios. Se quita un elemento de la lista y se notifica el cambio a los controles enlazados mediante una llamada al ResetBindings método . Este ejemplo de código forma parte de un ejemplo más grande proporcionado en How to: Reflect Data Source Novedades in a Windows Forms Control with the BindingSource.

private:
   void button1_Click( Object^ /*sender*/, EventArgs^ /*e*/ )
   {
      String^ xml = "<US><states>"
         + "<state><name>Washington</name><capital>Olympia</capital> "
         + "<flower>Coast Rhododendron</flower></state>"
         + "<state><name>Oregon</name><capital>Salem</capital>"
         + "<flower>Oregon Grape</flower></state>"
         + "<state><name>California</name><capital>Sacramento</capital>"
         + "<flower>California Poppy</flower></state>"
         + "<state><name>Nevada</name><capital>Carson City</capital>"
         + "<flower>Sagebrush</flower></state>"
         + "</states></US>";
      
      // Convert the xml string to bytes and load into a memory stream.
      array<Byte>^ xmlBytes = Encoding::UTF8->GetBytes( xml );
      MemoryStream^ stream = gcnew MemoryStream( xmlBytes,false );
      
      // Create a DataSet and load the xml into it.
      dataSet2->ReadXml( stream );
      
      // Set the data source.
      bindingSource1->DataSource = dataSet2;
      bindingSource1->ResetBindings( true );
   }
private void button1_Click(object sender, EventArgs e)
{
    // If items remain in the list, remove the first item. 
    if (states.Count > 0)
    {
        states.RemoveAt(0);

        // Call ResetBindings to update the textboxes.
        bindingSource1.ResetBindings(false);
    }
}

Private Sub button1_Click(ByVal sender As Object, ByVal e As EventArgs) _
    Handles button1.Click

    ' If items remain in the list, remove the first item. 
    If states.Count > 0 Then
        states.RemoveAt(0)

        ' Call ResetBindings to update the textboxes.
        bindingSource1.ResetBindings(False)
    End If

End Sub

Comentarios

El ResetBindings método informa a todos los controles enlazados a para BindingSource actualizar sus valores. El método lo hace generando el ListChanged evento al menos una vez; el metaDataChanged parámetro indica la naturaleza del cambio subyacente.

Independientemente del valor de metaDataChanged, se genera un ListChanged evento con ListChangedEventArgs.ListChangedType establecido en ListChangedType.Reset. Como consecuencia, llamar a ResetBindings con un parámetro de true provocará dos ListChanged eventos.

ResetBindings Se llama automáticamente cada vez que otro miembro realiza cambios importantes en el enlace de datos, como establecer las DataSource propiedades o DataMember . Sin embargo, el programador también puede llamar explícitamente a este método.

Se aplica a

Consulte también