gpt4 book ai didi

c# - ListBox 中的 DataTextField 是 2 个字段的组合

转载 作者:行者123 更新时间:2023-11-30 19:04:16 25 4
gpt4 key购买 nike

我有一个包含用户的列表框。数据源是用户类型的通用列表(包含 ID、名字、姓氏……)。现在我想将 id 用作数据值(通过 dataValueField),我希望 LastName + ' ' + Firstname 作为 DataTextField。

谁能告诉我这是怎么可能的?

我正在使用 C# (ASP.NET)。

最佳答案

最简单的方法是向包含全名的 User 类添加一个新属性:

public string FullName
{
get { return LastName + " " + FirstName; }
}

并将列表框绑定(bind)到它。

这样做的好处是集中了全名构建背后的逻辑,因此您可以在整个网站的多个地方使用它,如果您需要更改它(例如更改为 Firstname + ""+ Lastname),您只需需要在一处完成。

如果更改类不是一个选项,您可以创建一个包装类:

public class UserPresenter
{
private User _user;

public int Id
{
get { return _user.Id; }
}

public string FullName
{
get { return _user.LastName + " " + _user.Firstname; }
}
}

或者挂接到 itemdatabound 事件(可能在那里弄​​错了名称)并直接更改列表框项目。

关于c# - ListBox 中的 DataTextField 是 2 个字段的组合,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/861982/

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