返回系统对象

本文关键字:对象 系统对 系统 返回 | 更新日期: 2023-09-27 17:56:11

我正在将List<object>传递给填充checkedListBox的方法。我的理解是Object.ToString()对象与checkedListBox项相关联并显示可读字符串。Object.Name 完成此操作,但随后数据不与项目关联。如何访问checkListBox项的ValueMember属性?

public void CategoryListBox(List<Category> categoryList)
{
    checkedListBox1.Items.Clear();
    foreach (Category category in categoryList)
    {     
        checkedListBox1.Items.Add(category);
    } 
}

返回系统对象

ValueTMember of CheckBoxList

codingbiz 先生的回答中,我对这个关于ValueMember属性的控制checkListBox做了一些快速研究,所以显然从 Intellisense 我们无法浏览这个.DisplayMember.ValueMember checkListBox,所以我发现这个属性已经包含在checkListBox中但没有显示在其中。更多详情

列出所有名称

通过使用 Linq,我们可以实现这一目标。

  public class Category
  {
    public int Id { get; set; }
    public string CategoryName { get; set; }
  }

  List<Category> category = new List<Category>();
  category.Add(new Category { Id = 1, CategoryName = "test"  });
  category.Add(new Category { Id = 2, CategoryName = "let" });
  category.Add(new Category { Id = 3, CategoryName = "go" });
  checkedListBox1.DataSource = category;
  checkedListBox1.DisplayMember = "CategoryName";
  //checkedListBox1.ValueMember = "Id"; 
  //checkedListBox1.Items.AddRange(category.Select(c => c.CategoryName).ToArray());

我希望你能从这个答案中得到一些想法。