<asp:DropDownList ID="DropDownList5" runat="server" Height="16px" Width="127px">
<asp:ListItem Value="0">讲师</asp:ListItem>
<asp:ListItem Value="1">助教</asp:ListItem>
<asp:ListItem Value="2">教授</asp:ListItem>
<asp:ListItem Value="3">副教授</asp:ListItem>
</asp:DropDownList>前端aspx 的DropDownList是这样设置的。
后端我就是在数据库中读取用户的值出来,然后DropDownList5.SelectedItem.Text=teacherTittle;设置它的选中值,也没做其他操作。
为什么选中下拉菜单时是这样的:教授
助教
教授
副教授
╮(╯▽╰)╭,真郁闷。
其实按你的需求应该是DropDownList5.SelectedValue=2
if(x!=null) x.Selected=true
改变DropDownList就那么两种方式 一种是设置它的SelectedValue为你赋予的值 这个你可以看MSDN上面的解释: SelectedValue 获取列表控件中选定项的值,或选择列表控件中包含指定值的项。 (继承自 ListControl。)
另一种就是3楼的做法
如果你直接给SelectedItem赋值 那么就会如你所愿 改变当前所选项
但是你现在是给SelectedItem本身的Text属性赋值 自然就改变了他的Text内部呢估计就是这样的实现
public class ListItem//ListItem是DropDownList的SelecteItem属性的类型
{
string _text;
public string Text
{
get{return _text;}
set{_text=value;}
}
}