ComboBox.OnSelectionChangeCommitted(EventArgs) 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
引发 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)
参数
示例
下面的代码示例使用 SelectionChangeCommitted 事件和 SelectionLength 属性更改文本框的长度,具体取决于用户选择和提交的内容。
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
注解
SelectionChangeCommitted仅当用户更改组合框选择或设置 时,SelectedIndex才会引发 。 但是,根据 的配置方式 ComboBox 以及用户如何更改所选项, SelectionChangeCommitted 可能不会引发 事件。 或者,可以处理 SelectedIndexChanged,但请注意,无论索引是通过编程方式更改还是由用户更改,都会发生此事件。
引发事件时,将通过委托调用事件处理程序。 有关详细信息,请参阅 处理和引发事件。
OnSelectionChangeCommitted 方法还允许派生类对事件进行处理而不必附加委托。 这是在派生类中处理事件的首选技术。
继承者说明
在派生类中重写 OnSelectionChangeCommitted(EventArgs) 时,一定要调用基类的 OnSelectionChangeCommitted(EventArgs) 方法,以便已注册的委托对事件进行接收。