C# 在列表集合项的组合框中仅显示一列 portfolioHeaders=PortfolioService.GetPortfolioHeadersByQuery(); 列表=新列表; 列表.添加范围(portfolioHeaders);

C# 在列表集合项的组合框中仅显示一列 portfolioHeaders=PortfolioService.GetPortfolioHeadersByQuery(); 列表=新列表; 列表.添加范围(portfolioHeaders);,c#,.net,C#,.net,以上是代码 它的输出将是ID、名称、类型和修改日期 当我使用列表对数据源进行网格化时,我可以看到所有记录都完美地显示出来 现在我的问题是 我只想在组合框中显示名称,而忽略其他内容 有人能给我建议一种方法吗将组合框的“DisplayMember”属性设置为“Name”,并将“ValueMember”设置为“Name”(如果您想引用该值) 将组合框的“DisplayMember”属性设置为“Name”,并将“ValueMember”属性设置为“Name”(如果要引用该值) PortfolioHead

以上是代码

它的输出将是ID、名称、类型和修改日期

当我使用列表对数据源进行网格化时,我可以看到所有记录都完美地显示出来

现在我的问题是

我只想在组合框中显示名称,而忽略其他内容


有人能给我建议一种方法吗

将组合框的“DisplayMember”属性设置为“Name”,并将“ValueMember”设置为“Name”(如果您想引用该值)

将组合框的“DisplayMember”属性设置为“Name”,并将“ValueMember”属性设置为“Name”(如果要引用该值)

PortfolioHeaders类重写toString函数。然后将项目列表添加到组合框中。被重写的tostring函数返回的内容将显示在组合框中。

在PortfolioHeaders类中,重写tostring函数。然后将项目列表添加到组合框中。被重写的tostring函数返回的内容将显示在组合框中。

portfolioHeaders = PortfolioService.GetPortfolioHeadersByQuery();

List<PortfolioHeaders> list = new List<PortfolioHeaders>;
list.AddRange(portfolioHeaders);
那么

portfolioHeaders = PortfolioService.GetPortfolioHeadersByQuery();

List<PortfolioHeaders> list = new List<PortfolioHeaders>;
list.AddRange(portfolioHeaders);

使用绑定的DisplayMember属性:

var names = list.Select( p => p.Name);
comboBox1.DataSource = names;
comboBox1.DataBind();
List headers=newlist();
添加(新的MyHeaders{ID=10,Name=“Yo”});
添加(新的MyHeaders{ID=2,Name=“OY”});
添加(新的MyHeaders{ID=3,Name=“Pickles”});
添加(新的MyHeaders{ID=4,Name=“Florky”});
this.comboBox1.DataSource=标题;
this.comboBox1.DisplayMember=“Name”;
this.comboBox1.ValueMember=“ID”;

使用绑定的DisplayMember属性:

var names = list.Select( p => p.Name);
comboBox1.DataSource = names;
comboBox1.DataBind();
List headers=newlist();
添加(新的MyHeaders{ID=10,Name=“Yo”});
添加(新的MyHeaders{ID=2,Name=“OY”});
添加(新的MyHeaders{ID=3,Name=“Pickles”});
添加(新的MyHeaders{ID=4,Name=“Florky”});
this.comboBox1.DataSource=标题;
this.comboBox1.DisplayMember=“Name”;
this.comboBox1.ValueMember=“ID”;