zoukankan      html  css  js  c++  java
  • 关于下拉菜单(dropdownlist)一些用法心得

    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 id="DropDownList1" 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 id="weste" 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属性值。

  • 相关阅读:
    HTTP Continuation or nonHTTP traffic 数据包
    linuxTcp IP协议栈源码阅读笔记(转)
    使用Windows命令行启动服务
    数据库集群
    ShellExecute
    oracle 中数据库完全导入导出:cmd命令行模式
    理解ORACLE数据库字符集
    asp.net 编码设置
    ShellExecute与ShellExecuteEx的用法
    C++用位运算实现循环移位
  • 原文地址:https://www.cnblogs.com/limshirley/p/1504691.html
Copyright © 2011-2022 走看看