Questa documentazione è stata archiviata e non viene gestita.

Metodo Control.OnControlRemoved

Aggiornamento: novembre 2007

Genera l'evento ControlRemoved.

Spazio dei nomi:  System.Windows.Forms
Assembly:  System.Windows.Forms (in System.Windows.Forms.dll)

protected virtual void OnControlRemoved(
	ControlEventArgs e
)
protected void OnControlRemoved(
	ControlEventArgs e
)
protected function OnControlRemoved(
	e : ControlEventArgs
)

Parametri

e
Tipo: System.Windows.Forms.ControlEventArgs

Oggetto ControlEventArgs contenente i dati dell'evento.

Viene chiamato quando un controllo figlio è rimosso dal controllo.

La generazione di un evento richiama il gestore eventi mediante un delegato. Per ulteriori informazioni vedere Generazione di un evento.

Il metodo OnControlRemoved consente inoltre alle classi derivate di gestire l'evento senza associare un delegato. Si tratta della tecnica più usata per la gestione dell'evento in una classe derivata.

Note per gli eredi:

Quando si esegue l'override del metodo OnControlRemoved in una classe derivata, assicurarsi di chiamare il metodo OnControlRemoved della classe base, in modo che i delegati registrati ricevano l'evento.

Nell'esempio di codice riportato di seguito viene utilizzato l'evento ControlRemoved per rimuovere un controllo da un form e il nome del controllo rimosso viene visualizzato in un oggetto MessageBox.

// This example demonstrates the use of the ControlAdded and
// ControlRemoved events. This example assumes that two Button controls
// are added to the form and connected to the addControl_Click and
// removeControl_Click event-handler methods.
private void Form1_Load(object sender, System.EventArgs e)
{
    // Connect the ControlRemoved and ControlAdded event handlers
    // to the event-handler methods.
    // ControlRemoved and ControlAdded are not available at design time.
    this.ControlRemoved += new System.Windows.Forms.ControlEventHandler(this.Control_Removed);
    this.ControlAdded += new System.Windows.Forms.ControlEventHandler(this.Control_Added);
}

private void Control_Added(object sender, System.Windows.Forms.ControlEventArgs e)
{
    MessageBox.Show("The control named " + e.Control.Name + " has been added to the form.");
}

private void Control_Removed(object sender, System.Windows.Forms.ControlEventArgs e)
{
    MessageBox.Show("The control named " + e.Control.Name + " has been removed from the form.");
}

// Click event handler for a Button control. Adds a TextBox to the form.
private void addControl_Click(object sender, System.EventArgs e)
{
    // Create a new TextBox control and add it to the form.
    TextBox textBox1 = new TextBox();
    textBox1.Size = new Size(100,10);
    textBox1.Location = new Point(10,10);
    // Name the control in order to remove it later. The name must be specified
    // if a control is added at run time.
    textBox1.Name = "textBox1";

    // Add the control to the form's control collection.
    this.Controls.Add(textBox1);
}

// Click event handler for a Button control.
// Removes the previously added TextBox from the form.
private void removeControl_Click(object sender, System.EventArgs e)
{
    // Loop through all controls in the form's control collection.
    foreach (Control tempCtrl in this.Controls)
    {
        // Determine whether the control is textBox1,
        // and if it is, remove it.
        if (tempCtrl.Name == "textBox1")
        {
            this.Controls.Remove(tempCtrl);
        }
    }
}


// This example demonstrates the use of the ControlAdded and
// ControlRemoved events. This example assumes that two Button controls
// are added to the form and connected to the addControl_Click and
// removeControl_Click event-handler methods.
private void Form1_Load(Object sender, System.EventArgs e)
{
    // Connect the ControlRemoved and ControlAdded event handlers
    // to the event-handler methods.
    // ControlRemoved and ControlAdded are not available at design time.
    this.add_ControlRemoved(new System.Windows.Forms.
        ControlEventHandler(this.Control_Removed));
    this.add_ControlAdded(new System.Windows.Forms.
        ControlEventHandler(this.Control_Added));
} //Form1_Load

private void Control_Added(Object sender, System.Windows.Forms.
    ControlEventArgs e)
{
    MessageBox.Show("The control named " + e.get_Control().get_Name() 
        + " has been added to the form.");
} //Control_Added

private void Control_Removed(Object sender, System.Windows.Forms.
    ControlEventArgs e)
{
    MessageBox.Show("The control named " + e.get_Control().get_Name() 
        + " has been removed from the form.");
} //Control_Removed

// Click event handler for a Button control. Adds a TextBox to the form.
private void addControl_Click(Object sender, System.EventArgs e)
{
    // Create a new TextBox control and add it to the form.
    TextBox textBox1 = new TextBox();
    textBox1.set_Size(new Size(100, 10));
    textBox1.set_Location(new Point(10, 10));

    // Name the control in order to remove it later. 
    // The name must be specified
    // if a control is added at run time.
    textBox1.set_Name("textBox1");

    // Add the control to the form's control collection.
    this.get_Controls().Add(textBox1);
} //addControl_Click

// Click event handler for a Button control.
// Removes the previously added TextBox from the form.
private void removeControl_Click(Object sender, System.EventArgs e)
{
    // Loop through all controls in the form's control collection.
    for (int iCtr = 0; iCtr < this.get_Controls().get_Count(); iCtr++) {
        Control tempCtrl = this.get_Controls().get_Item(iCtr);

        // Determine whether the control is textBox1,
        // and if it is, remove it.
        if (tempCtrl.get_Name().Equals("textBox1")) {
            this.get_Controls().Remove(tempCtrl);
        }
    }
} //removeControl_Click


Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition , Windows XP Starter Edition, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98

.NET Framework e .NET Compact Framework non supportano tutte le versioni di ciascuna piattaforma. Per un elenco delle versioni supportate, vedere Requisiti di sistema di .NET Framework.

.NET Framework

Supportato in: 3.5, 3.0, 2.0, 1.1, 1.0
Mostra: