【问题标题】:add only one property from each item to listbox [closed]仅将每个项目的一个属性添加到列表框[关闭]
【发布时间】:2013-12-08 01:16:15
【问题描述】:

我在 ASP.NET 中有一个列表,其中包含聊天室中的用户。每个用户都有一个connectionid 和一个昵称。添加新用户后,我想将每个用户的昵称写入 ListBox1。我该怎么做?谢谢。

List<User> users = new List<User>();
class User
{
    public string connectionid { get; set; }
    public string nick { get; set; }
}

protected void Button1_Click(object sender, EventArgs e)
{
    users.Add(new User { connectionid = TextBox1.Text, nick = TextBox2.Text });
    //I want to populate ListBox1 with nick for each user
}

【问题讨论】:

  • 使用foreach 循环。
  • 我怀疑投票反对的原因是该网站上的几乎每个人都不喜欢 IDE 的屏幕截图而不是代码。只是预感。
  • @ethorn10 我也包含了代码。
  • @user3071591 我觉得讽刺的是,当你似乎只能用“没用”来回应答案(和建议)时,你希望人们解释反对票。能否详细说明什么不起作用?
  • 你能设置一个断点并做一些常规调试吗?

标签: c# asp.net


【解决方案1】:

您对@SLaks 建议的尝试很接近,但您不能以这种方式将用户列表添加到列表框中。这应该让你更接近:

protected void Button1_Click(object sender, EventArgs e)
{
    users.Add(new User { connectionid = TextBox1.Text, nick = TextBox2.Text });
    foreach (User u in users) {
        lbUsers.Items.Add(new ListItem(u.nick, u.connectionid));
    }
}

AddItems 集合的ListBox 要求项目是ListItem。您可以内联实例化一个新的并传递您想要与之关联的字符串/值对。

【讨论】:

    猜你喜欢
    • 2021-12-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-09-23
    • 2012-10-14
    • 2020-10-11
    相关资源
    最近更新 更多