派生自 的列表控件,ListControl例如或,由s 的列表填充。A有一个和一个属性。DropDownListListBoxRadioButtonListListItemListItemValueText
ListControl提供以下方法来访问当前选定的项目:
ListControl.SelectedItem返回当前选中的ListItem,ListControl.SelectedValue返回Value当前选中的属性ListItem。
现在,有趣的是:
ListControl.Text返回与 完全相同的值ListControl.SelectedValue。正如人们所期望的那样,它不会返回。SelectedItem.Text
这是设计使然:
ListControl.Text 属性
获取或设置 ListControl 控件的 SelectedValue 属性。
[...]
评论
Text 属性获取和设置与 SelectedValue 属性相同的值。
这似乎违反直觉并且使人们感到困惑。我的问题是:为什么要这样做?我可以想象提供一个Text属性对于实现ITextControl接口是必要的,但是为什么你会选择让它返回ValueListItem 而不是Text?