一尘不染

ComboBox:向项目添加文本和值(无绑定源)

c#

在C#WinApp中,如何将文本和值同时添加到ComboBox的项目中?我进行了搜索,通常的答案是使用“绑定到源”。但是,在我的情况下,我的程序中没有准备好的绑定源…我该怎么做:

combo1.Item[1] = "DisplayText";
combo1.Item[1].Value = "useful Value"

阅读 359

收藏
2020-05-19

共1个答案

一尘不染

您必须创建自己的类类型并重写ToString()方法以返回所需的文本。这是您可以使用的类的简单示例:

public class ComboboxItem
{
    public string Text { get; set; }
    public object Value { get; set; }

    public override string ToString()
    {
        return Text;
    }
}

以下是其用法的简单示例:

private void Test()
{
    ComboboxItem item = new ComboboxItem();
    item.Text = "Item text1";
    item.Value = 12;

    comboBox1.Items.Add(item);

    comboBox1.SelectedIndex = 0;

    MessageBox.Show((comboBox1.SelectedItem as ComboboxItem).Value.ToString());
}
2020-05-19