问题很奇怪,我有一个组合框,它通过 DataSource 属性正确填充了项目(它绑定到一个 bindingSource 项目,其中包含一个显示成员和一个值成员),这是一个简单的组合框,它允许我通过在他们的名字而不是他们的身份证。问题是,当我更改 SelectedValue 因为我想将一个选项设置为默认选项时,我发现 List 属性为空(我在另一个中继承了组合框类),但是当显示组合框时,我里面有项目,所以问题可能与何时真正从数据源加载数据有关(也许它仅在显示后才加载?)。我什么时候应该更改我的 SelectedValue?控件中没有任何“显示”事件
感谢您的任何建议
更新 1: 我以您的方式进行了测试,但事实并非如此(密钥很长,但即使我施放它也不起作用),事实上有趣的是我有一个允许我设置 SelectedValue 的设置器,甚至如果不抛出异常,则在下一个 MessageBox 中 Items.Count 给我 0 作为值,这很奇怪,因为当组合框显示在表单上时,它具有我想要的所有值。这是我的二传手的代码:
public object InputValue
{
get
{
return SelectedValue;
}
set
{
SelectedValue = ((long)value);
MessageBox.Show(this.Items.Count.ToString());
}
}