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