关于下拉菜单(dropdownlist)一些用法心得

摘要:
天冬氨酸。网络学习地址:http://www.cnblogs.com/limshirley/1.将SqlConnectionconn=newSqlConnection与数据库绑定(ConfigurationSettings.AppSettings[“job”])//数据库连接信息SqlCommandmyCommand=newSqlCommand(“select*frominfo”,conn)//

asp.net学习地址 :http://www.cnblogs.com/limshirley/

1.与数据库绑定 
SqlConnection conn= new 
SqlConnection(ConfigurationSettings.AppSettings["job"]);//数据库连接信息 
SqlCommand myCommand = new SqlCommand( "select * from info", conn ); //SQL命令 
myCommand.Connection.Open(); //打开数据库 
SqlDataReader myReader = myCommand.ExecuteReader(); //获取数据 
while ( myReader.Read() ) 

DropDownList.Items.Add( new ListItem( 
myReader["depsimplename"].ToString(),myReader["depcode"].ToString()));//增加dropwoenlist项


myCommand.Connection.Close(); //关闭数据库

若要指定绑定后的数据选定项 
可使用DropDownList.Items.FindByText("name").Selected=true或者 
DropDownList.Items.FindByValue("code").Selected=true 
另外也可从数据库中获得选定项(比如修改信息的时候) 
可使用先用数据库填充一个DateSet--ds,然后使用DropDownList.Items.FindByValue/*或者FindByText*/(ds.Tables[0].Rows[0].ItemArray[0].ToString()).Selected=true;

2.查询用法 
对于单个下拉菜单查询我一般直接使用SelectedIndexChanged事件,使用这个事件千万别忘记把下拉菜单的AutoPostBack属性设为true! 
private void DropDownList1_SelectedIndexChanged(object sender, System.EventArgs 
e) 

strSQL="select * from info where 
name="+DropDownList.SelectedItem.Text;//SQL命令与选项绑定 
...//再执行这个命令即可 

而对于多个下拉菜单联合查询我则使用增加一个按钮,这样更方便 
private void Button1_Click(object sender, System.EventArgs e) 

strSQL="select * from info where name1 like 
'%"+DropDownList1.SelectedItem.Text+"' and name2 like 
'%"+DropDownList2.SelectedItem.Text+"' ;//请注意我用的是like 
Admin.cc Detail=new Admin.cc();//自己定义的一个类,Detail的返回值是一个dataset 
infoDataGrid.DataSource = 
Detail.Display(strSQL.Replace("全部",""));//联合查询中用户往往不会把使用所有的下拉菜单,所以我加了一个'全部'的选项,不知道你们看到这里明不明白我为什么要使用like了,呵呵 
infoDataGrid.DataBind(); 

1.与数据库绑定 
SqlConnection conn= new 
SqlConnection(ConfigurationSettings.AppSettings["job"]);//数据库连接信息 
SqlCommand myCommand = new SqlCommand( "select * from info", conn ); //SQL命令 
myCommand.Connection.Open(); //打开数据库 
SqlDataReader myReader = myCommand.ExecuteReader(); //获取数据 
while ( myReader.Read() ) 

DropDownList.Items.Add( new ListItem( 
myReader["depsimplename"].ToString(),myReader["depcode"].ToString()));//增加dropwoenlist项


myCommand.Connection.Close(); //关闭数据库

若要指定绑定后的数据选定项 
可使用DropDownList.Items.FindByText("name").Selected=true或者 
DropDownList.Items.FindByValue("code").Selected=true 
另外也可从数据库中获得选定项(比如修改信息的时候) 
可使用先用数据库填充一个DateSet--ds,然后使用DropDownList.Items.FindByValue/*或者FindByText*/(ds.Tables[0].Rows[0].ItemArray[0].ToString()).Selected=true;

2.查询用法 
对于单个下拉菜单查询我一般直接使用SelectedIndexChanged事件,使用这个事件千万别忘记把下拉菜单的AutoPostBack属性设为true! 
private void DropDownList1_SelectedIndexChanged(object sender, System.EventArgs 
e) 

strSQL="select * from info where 
name="+DropDownList.SelectedItem.Text;//SQL命令与选项绑定 
...//再执行这个命令即可 

而对于多个下拉菜单联合查询我则使用增加一个按钮,这样更方便 
private void Button1_Click(object sender, System.EventArgs e) 

strSQL="select * from info where name1 like 
'%"+DropDownList1.SelectedItem.Text+"' and name2 like 
'%"+DropDownList2.SelectedItem.Text+"' ;//请注意我用的是like 
Admin.cc Detail=new Admin.cc();//自己定义的一个类,Detail的返回值是一个dataset 
infoDataGrid.DataSource = 
Detail.Display(strSQL.Replace("全部",""));//联合查询中用户往往不会把使用所有的下拉菜单,所以我加了一个'全部'的选项,不知道你们看到这里 
明不明白我为什么要使用like了,呵呵 
infoDataGrid.DataBind(); 
}

添加DorpDownList控件的Item子项的三种方法

DropDownList控件与ListBox控件最终将会被解析成为代码< select >< /select >

DropDownList控件的定义:

<asp:DropDownList runat="server"
DataSource="<% databindingexpression %>"
DataTextField="DataSourceField"
DataValueField="DataSourceField"
AutoPostBack="True|False"
OnSelectedIndexChanged="OnSelectedIndexChangedMethod" />

<asp:Listitem value="value" selected="True|False">
Text
</asp:Listitem>

</asp:DropDownList>

DataSource、DataTextField、DataValueField这三个属性的应用需要涉及DataBind的知识AutoPostBack属性:表示当DropDownList控件的所选项发生改变后,自动提交当前页面OnSeletedIndexChanged事件在DropDownList控件所选项发生变化后发生。

DropDownList控件的SelectedItem对象表示在执行过程中被选中的Item项、Item项拥有三个属性。其一为Text,其二为Value它们分别表示Item项所显示的文字与所表示的值,如果Value属性没有设置,则默认Value属性值等Text属性,第三个属性Selected则用于判断某Item项是否被选中添加DorpDownList控件的Item子项。


添加DorpDownList控件的Item子项的方法有三种:


第一种:使用<asp:ListItem>方法

<asp:DropDownList runat="server">
          <asp:ListItem Value="0">小学</asp:ListItem>
          <asp:ListItem Value="1">中学</asp:ListItem>
          <asp:ListItem Value="2">大学</asp:ListItem>
</asp:DropDownList>

第二种:使用Items属性的Add方法1

DropDownList.Items.Add(ItemText)

Items属性表示DropDownList控件所有Item项的集合,Add操作既是在这个集合中插入新的Item项。第二种方法用于只设定Item项的Text属性(实际上也指定了Value属性,此时Value属性值等于Text属性值)。

第三种:使用Items属性的Add方法2

DropDownListItems.Add(new ListItem(ItemText,ItemValue))

第三种方法同时设定了Item项的Text属性与Value属性,它是通过添加一个ListItem类来实现的。ListItem类使用了两个参数,第一个参数表示Text属性值,第二个参数表示Value属性值。

免责声明:文章转载自《关于下拉菜单(dropdownlist)一些用法心得》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇halcon 学习笔记JS在与lua的交互心得下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

SQL Server 数据库操作系统支持整理

一、概述 本文旨在已经官方文档整理出 SQL Server 数据库支持的操作系统,并给出建议,从而帮助用户对 SQL Server 数据库进行操作系统选择。 二、SQL Server数据库的操作系统兼容列表 操作系统兼容信息,可通过官方文档进行查阅,官方文档地址为:https://docs.microsoft.com/zh-cn/sql/sql-serve...

jmeter循环读取数据库表中的数据

先创建一个jdbc请求 请求在结果树正确后,添加一个循环控制器,循环次数定义数据库表查询的数量 variables names设置为col,那么如下变量会被设置为:   col_#=2 (总行数)  col_1=第1列, 第1行  col_2=第1列, 第2行 添加一个计数器用来坐变量拼接 添加请求引用N,使用函数助手 查看结果 jdbc...

MySQL 主从复制:基于二进制文件复制配置详解

MySQL-主从复制:基于二进制文件复制详解 前言 主从复制是指把一个MySQL的数据库服务器作为主服务器(master),然后把master的数据复制到一个或者多个MySQL数据库服务器作为从服务器(slave)。从master到slave的复制一般是异步复制,所以从服务器的复制可以随时停止,也不会影响到主服务器的使用。可以通过配置来决定只复制哪些数据库...

超赞的CSS3动画下拉菜单

今天分享几个最近看到的比较实用的CSS3带动画的下拉菜单效果,实现出来的效果跟使用jQuery的slideDown和fadeIn有得一比,效果非常赞,本人推荐各位以后可以使用下面的几种效果,一定会给你的前端开发带来不少亮点的。如果需要更多效果可以看之前的文章:CSS3下拉菜单模板 上面的这个下拉菜单就是纯CSS3实现的跟使用jquery中的fadeIn和...

Ambari安装

    adp环境配置文档adp环境配置文档 1 一,环境的基础配置同Apache hadoop类似(可参考) 1 二,不同配置之处 1 2.1 同步时钟 1 三. Hdp服务器配置 2 3.1 资源库的配置 2 3.2安装mysql 2 3.3安装配置Ambari 3 3.4重启Ambari-server 4 3.5启动图界面 4 3.5.1在物理主机浏...

编写SqlHelper使用,在将ExecuteReader方法封装进而读取数据库中的数据时会产生Additional information: 阅读器关闭时尝试调用 Read 无效问题,解决方法与解释

在自学杨中科老师的视频教学时,拓展编写SqlHelper使用,在将ExecuteReader方法封装进而读取数据库中的数据时 会产生Additional information: 阅读器关闭时尝试调用 Read 无效问题,错误产生时,我的代码如下: SqlHelper.cs代码如下: public static SqlDataReader ExecuteR...