SelectedIndexChanged问题 [英] Problem with SelectedIndexChanged
本文介绍了SelectedIndexChanged问题的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有这段代码。
private void cmbIndex()
{
foreach(Control myControl in this.Controls)
{
ComboBox comboBox = myControl as ComboBox;
if(comboBox!= null&& comboBox.Items.Count> 0)
{
comboBox.SelectedIndex = 0;
}
}
}
这会选择所有组合框索引为零。但我有一个带有selectedindexchanged事件的组合框。
cmbIndex()不再触发。我应该修改cmbIndex的代码吗?谢谢你
解决方案
如果我理解你想要使用这个方法来初始化/重新启动所有尚未选择索引的组合框控件。为此,您应该更改您的方法(因为SelectedIndex
,其值-1
表示未选择任何索引):
private void cmbIndex()
{
foreach (控制myControl 这个 .Controls)
{
ComboBox comboBox = myControl as ComboBox;
if (comboBox!= null && comboBox.Items.Count > 0 && comboBox.SelectedIndex < 0 )
{
comboBox.SelectedIndex = 0 ;
}
}
}
// 尝试此代码。
private void cmbIndex()
{
foreach (控制c in 此 .Controls)
{
foreach (在 c.Controls中控制childc )
{
if (childc ComboBox)
{
ComboBox comboBox = childc as ComboBox;
if (comboBox!= null && comboBox.Items.Count > 0 )
{
comboBox.SelectedIndex = 0 跨度>;
}
// ((ComboBox)childc).SelectedIndex = 0;
}
}
}
}
如有任何问题请告诉我。
- > M.U
Hi I have this code.
private void cmbIndex() { foreach (Control myControl in this.Controls) { ComboBox comboBox = myControl as ComboBox; if (comboBox != null && comboBox.Items.Count > 0) { comboBox.SelectedIndex = 0; } } }
This selects all combo box index to zero. But I have one combo box with a selectedindexchanged event.
cmbIndex() does not fire anymore. Should I revise my codes for cmbIndex? Thank you
解决方案
If I understood correctly you want tu use this method to init/reinit all your combo box controls that do not have yet index selected. For doing that you should change your method like this (becauseSelectedIndex
with value-1
means no index selected):
private void cmbIndex() { foreach (Control myControl in this.Controls) { ComboBox comboBox = myControl as ComboBox; if (comboBox != null && comboBox.Items.Count > 0 && comboBox.SelectedIndex < 0) { comboBox.SelectedIndex = 0; } } }
//try this code. private void cmbIndex() { foreach (Control c in this.Controls) { foreach (Control childc in c.Controls) { if (childc is ComboBox) { ComboBox comboBox = childc as ComboBox; if (comboBox != null && comboBox.Items.Count > 0) { comboBox.SelectedIndex = 0; } // ((ComboBox)childc).SelectedIndex = 0; } } } }
if any issue then let me know.
-> M.U
这篇关于SelectedIndexChanged问题的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文