BindingSource.ResetBindings(Boolean) Metodo

Definizione

Fa sì che un controllo associato all'oggetto BindingSource rilegge tutti gli elementi nell'elenco e aggiorni i relativi valori visualizzati.

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

Parametri

metadataChanged
Boolean

true se lo schema dei dati è stato modificato; false se sono stati modificati solo i valori.

Esempio

Nell'esempio di codice seguente viene usato un componente per associare un BindingSource elenco di matrici, che non fornisce una notifica di modifica. Un elemento viene rimosso dall'elenco e i controlli associati ricevono una notifica della modifica chiamando il ResetBindings metodo . Questo esempio di codice fa parte di un esempio più ampio fornito in Come: Riflettere gli aggiornamenti dell'origine dati in un controllo Windows Forms con 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

Commenti

Il ResetBindings metodo informa tutti i controlli associati all'oggetto BindingSource per aggiornare i relativi valori. Il metodo esegue questa operazione generando l'evento ListChanged almeno una volta. Il metaDataChanged parametro indica la natura della modifica sottostante.

Indipendentemente dal valore di metaDataChanged, viene generato un ListChanged evento con ListChangedEventArgs.ListChangedType impostato su ListChangedType.Reset. Di conseguenza, la chiamata ResetBindings con un parametro di true genererà due ListChanged eventi.

ResetBindings viene chiamato automaticamente ogni volta che un altro membro apporta modifiche importanti al data binding, ad esempio l'impostazione delle DataSource proprietà o DataMember . Tuttavia, il programmatore può anche chiamare questo metodo in modo esplicito.

Si applica a

Vedi anche