c# – 在CheckedListBox中显示友好名称
作者:互联网
我正在将List中的项添加到CheckedListBox.我希望该框能够向用户显示项目的友好名称,但是当用户选择它时,它具有“秘密”实际值.
foreach (string s in x)
{
checkedlistBox1.Items.Add(friendlyValue);
//Now how do I get this to have the real value?
}
使用下拉菜单,我可以将DisplayName和ValueName设置为某些内容并使用以下内容:
combobox1.Items.Add(new ComboBoxItem { friendlyValue = x, realValue = y });
我似乎无法使用CheckedListBox执行此操作.
解决方法:
在CheckedListBox上设置DisplayMember和ValueMember属性.
它们在功能上等同于ComboBox的DisplayName和ValueName属性.
public class MyClass
{
public string FriendlyValue { get; set; }
public string RealValue { get; set; }
}
public class YourForm : Form
{
public YourForm()
{
var friendlyList
= new List<string>(); // imagine it's populated with friendly values
foreach (var fv in friendlyList)
{
checkedListBox1.Items.Add(
new MyClass { FriendlyValue = fv, RealValue = ??? });
}
checkedListBox1.DisplayMember = "FriendlyValue";
checkedListBox1.ValueMember = "RealValue";
}
}
标签:c,winforms,checkedlistbox 来源: https://codeday.me/bug/20190629/1322623.html