【发布时间】:2013-10-17 03:19:38
【问题描述】:
从ListControl 派生的列表控件,例如DropDownList、ListBox 或RadioButtonList,由ListItems 的列表填充。 ListItem 具有 Value 和 Text 属性。
ListControl 提供以下方法来访问当前选定的项目:
-
ListControl.SelectedItem返回当前选中的ListItem, -
ListControl.SelectedValue返回当前选中的ListItem的Value属性。
现在,有趣的是:
-
ListControl.Text返回与ListControl.SelectedValue完全相同的值。它确实不返回SelectedItem.Text,正如人们所期望的那样。
这是by design:
ListControl.Text 属性
获取或设置 ListControl 控件的 SelectedValue 属性。
[...]
备注
Text 属性获取和设置与 SelectedValue 属性相同的值。
这似乎违反直觉并且confuses people。我的问题是:为什么要这样做?我可以想象提供Text 属性对于实现ITextControl 接口是必要的,但是为什么你会选择让它返回ListItem 的Value 而不是Text?
【问题讨论】:
标签: asp.net listcontrol