ComboBox.OnSelectionChangeCommitted(EventArgs) Method
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Raises the SelectionChangeCommitted event.
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)
Parameters
Examples
The following code example uses the SelectionChangeCommitted event and the SelectionLength property to change the length of the text box depending on what the user has selected and committed.
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
Remarks
The SelectionChangeCommitted is raised only when the user changes the combo box selection, or when you set the SelectedIndex. However, depending on how the ComboBox is configured, and how the user changes the selected item, the SelectionChangeCommitted event may not be raised. Alternatively, you can handle the SelectedIndexChanged, but note that this event occurs whether the index is changed programmatically or by the user.
Raising an event invokes the event handler through a delegate. For more information, see Handling and Raising Events.
The OnSelectionChangeCommitted method also allows derived classes to handle the event without attaching a delegate. This is the preferred technique for handling the event in a derived class.
Notes to Inheritors
When overriding OnSelectionChangeCommitted(EventArgs) in a derived class, be sure to call the base class's OnSelectionChangeCommitted(EventArgs) method so that registered delegates receive the event.