这是select one value of checkboxCombobox
的另一个问题我需要一个特殊情况的复选框 - 组合框,其动作类似于常规组合框。我需要一次只能选择一个值。我现在明白了。我的下一个问题是:
private void PreDefSerials_SelectedValueChanged(object sender, EventArgs e)
{
if (PreDefSerials.SelectedIndex > -1)
{
// shut down the evenhandler
PreDefSerials.SelectedValueChanged -= PreDefSerials_SelectedValueChanged;
// get the selected items name.
string test = PreDefSerials.SelectedItem.ToString();
// deselect all boxes
for (int i = 0; i < PreDefSerials.CheckBoxItems.Count; i++)
{
PreDefSerials.CheckBoxItems[i].CheckState = CheckState.Unchecked;
}
if(test != "")
// select the selected text again
PreDefSerials.CheckBoxItems[test].CheckState = CheckState.Checked;
// reinstate the eventhandler
PreDefSerials.SelectedValueChanged += PreDefSerials_SelectedValueChanged;
}
}
我现在的问题是,当我在checkbocombobox中选择第二项时,所选项目是(item1,item2)。使用此名称,我对该项目的重新检查无效。
如何才能获得最近点击的checkboxcombobox项目?
答案 0 :(得分:1)
为什么我总是想要这么做呢!为什么尝试使用checkboxcombobox作为组合框?只因为我在我的表格上有它!
有一种更好,更简单的方法来解决这个问题!添加一个组合框。所以我做了。我的新解决方案是与checkboxcombobox位于同一位置的隐形组合框。当某个事件发生时,我的组合框将变得可见,我的checkboxcombobox将变为不可见。
comboBox1.Visible = true;
PreDefSerials.Visible = false;
当我的行动完成后,组合框将再次消失。大家都感谢你和我一起思考。
答案 1 :(得分:0)
属性SelectedItem
包含最近选定的项目,属性SelectedItems
包含所有选定的项目。