我正在使用UserControl
ListBox
。在某些时刻,我需要在ListBox
中获取所选项目的文本。我会采取的“正常”方式是:
var selected = (CustomObject)listBox.SelectedItem;
var str = selected.PropertyShowingInListBox;
但由于UserControl
的某些原因,我无法施放SelectedItem
。因此,我的下一个机会是使用SelectedItem
作为object
和DisplayMemberPath
通过反思获取文本。像这样:
var selected = listBox.SelectedItem;
var str = selected.GetType().GetProperty(listBox.DisplayMemberPath).GetValue(selected, null).ToString();
但这不是最好的。我有什么办法吗?