【问题标题】:How to add value to checkedListBox items如何为checkedListBox项目添加价值
【发布时间】:2015-12-30 17:37:18
【问题描述】:

是否可以将值和标题添加到checkedListBox 项目中

checkedListBox1.Items.Insert(0,"title");    

如何增加价值?

【问题讨论】:

    标签: c# winforms checkedlistbox


    【解决方案1】:
    checkedListBox1.Items.Insert(0, new ListBoxItem("text", "value"));
    

    【讨论】:

    • 抱歉问题,在这种情况下 ListItem 是什么?
    • 我有错误找不到类型或命名空间名称“ListItem”(您是否缺少 using 指令或程序集引用?)
    • 试试这个:ListBoxItem("text", "value") 而不是 ListItem("text", "value")
    【解决方案2】:

    尝试设置 DisplayMember 和 ValueMember 属性。然后你可以像这样传递一个匿名对象:

    checkedListBox1.DisplayMember = "Text";
    checkedListBox1.ValueMember = "Value";
    checkedListBox1.Items.Insert(0, new { Text= "text", Value = "value"})
    

    编辑

    要在下面回答您的问题,您可以为您的项目创建一个类,如下所示:

    public class MyListBoxItem
    {
        public string Text { get; set; }
        public string Value { get; set; }
    }
    

    然后像这样添加它们:

    checkedListBox1.Items.Insert(0, new MyListBoxItem { Text = "text", Value = "value" });
    

    然后你可以得到这样的值:

    (checkedListBox1.Items[0] as MyListBoxItem).Value
    

    【讨论】:

    • 如何获取这个valueMeber和显示成员foreach(object itemChecked in checkedListBox1.CheckedItems) { ???? }
    • P.S:您需要重写 MyListBoxItem 类中的 ToString() 方法。 CheckListBox 将调用您的 ToString() 方法。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-12-08
    • 1970-01-01
    • 1970-01-01
    • 2011-09-05
    • 2010-10-13
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多