700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > DropDownList动态添加新项并位于第一项 ASP.NET控件应用

DropDownList动态添加新项并位于第一项 ASP.NET控件应用

时间:2022-06-03 02:59:54

相关推荐

DropDownList动态添加新项并位于第一项 ASP.NET控件应用

今天做一个查询功能时遇到了一个问题,是这样的:

我要用DropDownList来绑定数据库里查询出来的类型数据,如下图:想在这两个类型之上再增加一个“全部留言”的项,因为查询条件应该有查询全部类型的留言。尝试了三种方式,最后终于实现了,不多说了,“上菜啦……”

一、直接绑定数据:

1TList<MessageType>messageTypeSource=ClassMessage.GetMessageTypeByModuleId(moduleId);//获取所有类型的方法

2DropDownList1.DataSource=messageTypeSource;//绑定数据源

3DropDownList1.DataTextField="FmessageTypeName";//文本内容字段

4DropDownList1.DataValueField="FmessageTypeId";//值字段

5DropDownList1.DataBind();

编译后页面代码:

1<selectname="dropdownlist1"id="dropdownlist1">

2<optionvalue="1">网站建议</option>

3<optionvalue="2">教学相关</option>

4</select>

缺少了,不选择类型时的“全部留言”这个选项。这不符合我的要求,于是Search了一下网络资源,发现有用DropDownList1.Items.Add(new ListItem("全部留言","0")),这种方法的,于是修改代码如下:

二、用 DropDownList1.Items.Add() 方法动态添加一项:

1TList<MessageType>messageTypeSource=ClassMessage.GetMessageTypeByModuleId(moduleId);//获取所有类型的方法

2DropDownList1.DataSource=messageTypeSource;//绑定数据源

3DropDownList1.DataTextField="FmessageTypeName";//文本内容字段

4DropDownList1.DataValueField="FmessageTypeId";//值字段

5DropDownList1.DataBind();

6DropDownList1.Items.Add(newListItem("全部留言","0"));//动态添加新项

编译后页面代码:

1<selectname="dropdownlist1"id="dropdownlist1">

2<optionvalue="1">网站建议</option>

3<optionvalue="2">教学相关</option>

4<optionvalue="0">全部留言</option>

5</select>

“全部留言”被放置到了最后一项,这也不是我想要的效果,于是再次Web Search后,找到了解决办法,请看下面的代码:

三、用 DropDownList1.Items.Insert() 方法动态插入指定序号的新项

1TList<MessageType>messageTypeSource=ClassMessage.GetMessageTypeByModuleId(moduleId);//获取所有类型的方法

2DropDownList1.DataSource=messageTypeSource;//绑定数据源

3DropDownList1.DataTextField="FmessageTypeName";//文本内容字段

4DropDownList1.DataValueField="FmessageTypeId";//值字段

5DropDownList1.DataBind();

6//DropDownList1.Items.Add(newListItem("全部留言","0"));//动态添加新项

7DropDownList1.Items.Insert(0,newListItem("全部留言","0"));//动态插入指定序号的新项

编译后页面代码:

1<selectname="dropdownlist1"id="dropdownlist1">

2<optionvalue="0">全部留言</option>

3<optionvalue="1">网站建议</option>

4<optionvalue="2">教学相关</option>

5</select>

这样就实现了想要的样式,最终还是DropDownList1.Items.Insert(0,new ListItem("全部留言","0"));方法解决了问题。最终效果如下图:

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。