C#下拉列表绑定数据库的使用三层实现

java 同时被 2 个专栏收录
18 篇文章 0 订阅
29 篇文章 0 订阅

今天我们来讲一讲下拉列表及其使用方法。

所使用工具:

Microsoft Visual Studio 2010
SQL Server Management Studio

•介绍
ComboBox既是下拉列表

属性:
Items属性:为下拉列表添加相应的项目,与列表框类似

DropDownStyle属性:控制组合框的外观和功能(此属性如果选择DropDownList则只可选择而不能再框中输入,若选择DropDown则即可在框中输入又可以进行选择)

Sorted属性:指定是否对组合框的列表部分中的项进行排序

事件:
SelectedIndexChanged事件:选择下拉框中的选项时发生

•实践
首先,我们是绑定数据库。我们就要建立一个数据库。我这里建立了一个叫T2的数据库,只有两行数据。

T2
在这里插入图片描述
建立完成了以后,就开始在VS中实现我们的目标了!

建立三层,在我第一篇文章中写入了https://my.oschina.net/u/3913001/blog/1858562

然后,呵呵,上代码~

Model层(Symboluser类):

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;



namespace Model

{

    public class Symboluser

    {

        public string id { set; get; }

        public string symbol { set; get; }

    }

}
DAL层(dal类):



using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using System.Data;



namespace DAL

{

    public class dal

    {



        public List<Model.Symboluser> ToSelectSymbol(string where)

        {

            DataSet ds = SQLDispose. ToGetData (" select * from T2 " + where);

            if (ds != null && ds.Tables[0] != null && ds.Tables[0].Rows.Count > 0)

            {

                List<Model.Symboluser> MyList = new List<Model.Symboluser>();

                Model.Symboluser Myuserlist = null;

                foreach (DataRow item in ds.Tables[0].Rows)

                {

                    Myuserlist = new Model.Symboluser();

                    Myuserlist.id = item["id"].ToString();

                    Myuserlist.symbol = item["symbol"].ToString();

                    MyList.Add(Myuserlist);

                }

                return MyList;

            }

            else

            {

                return null;

            }

        }

Public class SQLDispose

{

static string ConnStr = "Data Source=.;Initial Catalog=调用的数据库名;Persist Security Info=True;User ID=数据库用户名;Password=数据库密码";



public static DataSet  ToGetData (string Sql)

        {

            using (SqlConnection Conn = new SqlConnection(ConnStr))

            {

                using (SqlDataAdapter da = new SqlDataAdapter(Sql, Conn))

                {

                    DataSet ds = new DataSet();

                    Conn.Open();

                    da.Fill(ds);

                    da.Dispose();

                    return ds;

                }

            }

        }



}
   }

}
BLL层(bll类):

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;



namespace BLL

{

   

    public class bll

    {

        DAL.dal Mydal = new DAL.dal();

      

        public List<Model.Symboluser> ToSelectSymbol()

        {



            return Mydal.ToSelectSymbol("  ");



        }

    }

}

UI层(前端):

<asp:DropDownList ID="DropDownList1" runat="server" Width="93%" Height="86%">

</asp:DropDownList>

(因为前端只需要加这个控件就行)

UI层(后端):

using System;

using System.Collections.Generic;

using System.Linq;

using System.Web;

using System.Web.UI;

using System.Web.UI.WebControls;



namespace UI

{

   

    public partial class SheZhi : System.Web.UI.Page

    {

        BLL.bll Mybll = new BLL.bll();

        protected void Page_Load(object sender, EventArgs e)

        {

            Boon();

        }

       public void Boon()

        {

            if (!IsPostBack)

            {

                List<Model.Symboluser> Mysymbol = new List<Model.Symboluser>();

                Mysymbol = Mybll.ToSelectSymbol();

                DropDownList1.DataTextField = "symbol";

                DropDownList1.DataValueField = "symbol";

                DropDownList1.DataSource = Mysymbol;

                DropDownList1.DataBind();



                this.DropDownList1.Items.Insert(0, new ListItem("==请?选?择?=="));

              

            }

        }



     

    }

}

最后点击运行,就成功啦~

效果如下:
在这里插入图片描述
是不是很简单~
如果需要有关编程等资源可以关注公众号“考神傻小呆”获取

  • 2
    点赞
  • 1
    评论
  • 6
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

©️2021 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值