Csharp/C#教程:如何处理ComboBox的SelectedIndexChanged事件?分享


如何处理ComboBox的SelectedIndexChanged事件?

我有DataGridView ,它包含两个ComboBox列。 第二个ComboBox将根据第一个ComboBox的选定值填充数据。

如何处理第一个ComboBoxSelectedIndexChanged事件。

DataGridView问题的一个很好的资源可以在这里找到:

https://www.windowsclient.net/Samples/Go%20To%20Market/DataGridView/DataGridView%20FAQ.doc

从那里开始如何处理选定的更改事件:

如何处理SelectedIndexChanged事件?

有时,知道用户何时在ComboBox编辑控件中选择了一个项目会很有帮助。 使用表单上的ComboBox,您通常会处理SelectedIndexChanged事件。 使用DataGridViewComboBox,您可以使用DataGridView.EditingControlShowing事件执行相同的操作。 以下代码示例演示了如何执行此操作。 请注意,该示例还演示了如何防止多个SelectedIndexChanged事件触发。

 private void dataGridView1_EditingControlShowing(object sender, DataGridViewEditingControlShowingEventArgs e) { ComboBox cb = e.Control as ComboBox; if (cb != null) { // first remove event handler to keep from attaching multiple: cb.SelectedIndexChanged -= new EventHandler(cb_SelectedIndexChanged); // now attach the event handler cb.SelectedIndexChanged += new EventHandler(cb_SelectedIndexChanged); } } void cb_SelectedIndexChanged(object sender, EventArgs e) { MessageBox.Show("Selected index changed"); } 

如果我使用EditingControlShowing事件,则cb_SelectedIndexChanged会多次触发,即使用户选择了combobox但未更改选择。

这对我有用:

 private void dataGridView1_CellValueChanged(object sender, DataGridViewCellEventArgs e) { if (e.ColumnIndex == comboboxColumn.Index && e.RowIndex >= 0) //check if combobox column { object selectedValue = dataGridView1.Rows[e.RowIndex].Cells[e.ColumnIndex].Value; } } //changes must be committed as soon as the user changes the drop down box private void dataGridView1_CurrentCellDirtyStateChanged(object sender, EventArgs e) { if (dataGridView1.IsCurrentCellDirty) { dataGridView1.CommitEdit(DataGridViewDataErrorContexts.Commit); } } 

将第二个下拉列表放在“更新”面板中,如下所示

         

像这样为第一个下拉列表设置AutoPostBack =“true”属性。

上述就是C#学习教程:如何处理ComboBox的SelectedIndexChanged事件?分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)!

  

本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

ctvol管理联系方式QQ:251552304

本文章地址:https://www.ctvol.com/cdevelopment/1019592.html

(0)
上一篇 2022年1月4日
下一篇 2022年1月4日

精彩推荐