ComboBox.OnSelectionChangeCommitted(EventArgs) Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Genera el evento SelectionChangeCommitted.
protected:
virtual void OnSelectionChangeCommitted(EventArgs ^ e);
protected virtual void OnSelectionChangeCommitted (EventArgs e);
abstract member OnSelectionChangeCommitted : EventArgs -> unit
override this.OnSelectionChangeCommitted : EventArgs -> unit
Protected Overridable Sub OnSelectionChangeCommitted (e As EventArgs)
Parámetros
Ejemplos
En el ejemplo de código siguiente se usa el SelectionChangeCommitted evento y la SelectionLength propiedad para cambiar la longitud del cuadro de texto en función de lo que el usuario haya seleccionado y confirmado.
void comboBox1_SelectionChangeCommitted( Object^ sender, EventArgs^ /*e*/ )
{
ComboBox^ senderComboBox = dynamic_cast<ComboBox^>(sender);
// Change the length of the text box depending on what the user has
// selected and committed using the SelectionLength property.
if ( senderComboBox->SelectionLength > 0 )
{
textbox1->Width =
senderComboBox->SelectedItem->ToString()->Length *
((int)this->textbox1->Font->SizeInPoints);
textbox1->Text = senderComboBox->SelectedItem->ToString();
}
}
private void comboBox1_SelectionChangeCommitted(object sender, EventArgs e)
{
ComboBox senderComboBox = (ComboBox) sender;
// Change the length of the text box depending on what the user has
// selected and committed using the SelectionLength property.
if (senderComboBox.SelectionLength > 0)
{
textbox1.Width =
senderComboBox.SelectedItem.ToString().Length *
((int) this.textbox1.Font.SizeInPoints);
textbox1.Text = senderComboBox.SelectedItem.ToString();
}
}
Private Sub comboBox1_SelectionChangeCommitted(ByVal sender _
As Object, ByVal e As EventArgs) _
Handles comboBox1.SelectionChangeCommitted
Dim senderComboBox As ComboBox = CType(sender, ComboBox)
' Change the length of the text box depending on what the user has
' selected and committed using the SelectionLength property.
If (senderComboBox.SelectionLength > 0) Then
textbox1.Width = _
senderComboBox.SelectedItem.ToString().Length() * _
CType(Me.textbox1.Font.SizeInPoints, Integer)
textbox1.Text = senderComboBox.SelectedItem.ToString()
End If
End Sub
Comentarios
SelectionChangeCommitted solo se genera cuando el usuario cambia la selección del cuadro combinado o cuando se establece .SelectedIndex Sin embargo, dependiendo de cómo ComboBox se configure y cómo cambia el usuario el elemento seleccionado, es posible que no se genere el SelectionChangeCommitted evento. Como alternativa, puede controlar , SelectedIndexChangedpero tenga en cuenta que este evento se produce si el índice cambia mediante programación o por el usuario.
Cuando se genera un evento, se invoca el controlador de eventos a través de un delegado. Para obtener más información, consulte controlar y provocar eventos.
El método OnSelectionChangeCommitted también permite que las clases derivadas controlen el evento sin adjuntar ningún delegado. Ésta es la técnica preferida para controlar el evento en una clase derivada.
Notas a los desarrolladores de herederos
Al reemplazar OnSelectionChangeCommitted(EventArgs) en una clase derivada, asegúrese de llamar al método OnSelectionChangeCommitted(EventArgs) de la clase base para que los delegados registrados reciban el evento.