我正在填充一个带有对象的checklistbox,该对象处理组件的路径。如何从与所选索引关联的对象中获取特定属性?我目前正在使用SelectedIndexChanged事件,我尝试过SelectedItem,SelectedValue,SelectedIndex。我可以使用checkedListBox1.SelectedValue.GetType()获取属性类型,但不能获取值.GetProperty(“fullPath”)。感谢。
Class1 c1;
List<object> files = new List<object>();
foreach(var value in filteredFiles1)
{
c1 = new Class1(value);
checkedListBox1.DisplayMember = "fileName";
files.Add(c1);
}
checkedListBox1.DataSource = files;
答案 0 :(得分:1)
您应该能够将CheckedListBox
SelectedItem
强制转换为您的类的实例,然后访问范围内的任何属性。这是一个例子:
private void checkedListBox1_SelectedIndexChanged(object sender, EventArgs e)
{
Class1 c = (Class1)checkedListBox1.SelectedItem;
MessageBox.Show(c.fileName);
MessageBox.Show(c.fullPath);
}
我建议做一些额外的检查以确保对象不为空(即如果SelectedIndex
变为-1)。