Condividi tramite


BindingSource.ResetBindings(Boolean) Metodo

Definizione

Fa sì che un controllo associato all'oggetto BindingSource esegua la rilettura di tutti gli elementi dell'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 è stato modificato lo schema dati; false se sono stati modificati soltanto i valori.

Esempio

Nell'esempio di codice seguente viene usato un BindingSource componente per associare un 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 Procedura: Riflettere l'origine dati Aggiornamenti 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 a 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