gpt4 book ai didi

c# - ComboBox SelectedValue 属性不起作用

转载 作者:太空宇宙 更新时间:2023-11-03 20:40:15 25 4
gpt4 key购买 nike

我正在尝试将对象添加到组合框中并使用 SelectedValue 属性来选择组合框中的项目,但它不起作用:SelectedValue 在作业。

        class ComboBoxItem
{
string name;
object value;

public string Name { get { return name; } }
public object Value { get { return value; } }

public ComboBoxItem(string name, object value)
{
this.name = name;
this.value = value;
}

public override bool Equals(object obj)
{
ComboBoxItem item = obj as ComboBoxItem;
return item!=null && Value.Equals(item.Value);
}
}

operatorComboBox.Items.Add(new ComboBoxItem("Gleich", SearchOperator.OpEquals));
operatorComboBox.Items.Add(new ComboBoxItem("Ungleich", SearchOperator.OpNotEquals));


operatorComboBox.ValueMember="Value";
//SelectedValue is still null after this statement
operatorComboBox.SelectedValue = SearchOperator.OpNotEquals;

最佳答案

ValueMember 仅在通过 DataSource 属性进行数据绑定(bind)时适用,而不适用于使用 Items.Add 手动添加项目时。试试这个:

var items = new List<ComboBoxItem>();
items.Add(new ComboBoxItem(...));

operatorComboBox.DataSource = items;

顺便说一句,请注意,当您覆盖 Equals 时,您还应该覆盖并实现 GetHashCode

关于c# - ComboBox SelectedValue 属性不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3140910/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com