gpt4 book ai didi

c# - 如何从组合框中删除对象?

转载 作者:行者123 更新时间:2023-12-02 01:15:46 25 4
gpt4 key购买 nike

我有一个带有 Foo 类型对象的组合框,这里是 Foo 类:

public class Foo
{
public string name { get; set; }
public string path { get; set; }
}

Foo.name 是组合框中显示的文本,Foo.path 是所选选项的值。

我想在执行某些操作后从组合框中删除一个选项。

我试过这些方法:

  • 1

    comboBox2.Items.Remove(@comboBox2.Text);  
  • 2

    comboBox2.Items.Remove(@comboBox2.SelectedValue.ToString());  
  • 3

    Foo ToDelete = new Foo();
    ToDelete.name = @comboBox2.Text;
    ToDelete.path = @comboBox2.SelectedValue.ToString();
    comboBox2.Items.Remove(ToDelete);

对我来说没有任何用处。 :/如何做到这一点?

更新

这就是我初始化组合框的方式:

    string[] filePaths = Directory.GetFiles(sites.paths[comboBox1.SelectedIndex]);

List<Foo> combo2data = new List<Foo>();

foreach (string s in filePaths)
{
Foo fileInsert = new Foo();
fileInsert.path = s;
fileInsert.name = Path.GetFileName(s);
combo2data.Add(fileInsert);
}

comboBox2.DataSource = combo2data;
comboBox2.ValueMember = "path";
comboBox2.DisplayMember = "name";

最佳答案

comboBox2.Items.Remove(comboBox2.SelectedValue);只会从组合框中删除,不会从绑定(bind)到组合框的数据源中删除。您可以将其从数据源中删除并重新绑定(bind)数据源。

关于c# - 如何从组合框中删除对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11556216/

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