C#GUI编程学习之ComboBox控件篇1--连接数据库并传递数据到文本框

来源:互联网 发布:全面的财经数据 编辑:程序博客网 时间:2024/04/28 08:54

一、要求:1.ComboBox空间的数据来源为本地数据库中资源

            2.当选择到ComboBox的Item时,在TextBox中显示出结果

二、窗体图示:

三、源代码:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Data.SqlClient;

namespace 添加数据表数据
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        //private void button1_Click(object sender, EventArgs e)
        //{
        //    //通过ComboBox连接数据库实例
        //    //第一步:实例化SQL连接
        //    SqlConnection con = new SqlConnection("server=(local);uid=sa;pwd=wxniit;database=手镯营销系统");
        //    //第二步:打开数据库
        //    con.Open();
        //    //第三步:实例化DateSet建立数据缓存区
        //    DataSet ds = new DataSet();
        //    //第四步:实例化检索语句
        //    SqlDataAdapter da = new SqlDataAdapter("SELECT 珠宝名称 FROM 手镯信息", con);
        //    //把存放在缓存区内的数据通过Fill方法添加到数据库中
        //    da.Fill(ds);
        //    //绑定数据源
        //    comboBox1.DataSource = ds.Tables[0].DefaultView;
        //    //绑定字段
        //    comboBox1.DisplayMember = "珠宝名称";

        //}

        private void Form1_Load(object sender, EventArgs e)
        {
            ////通过ComboBox连接数据库实例
            ////第一步:实例化SQL连接
            //SqlConnection con = new SqlConnection("server=(local);uid=sa;pwd=wxniit;database=手镯营销系统");
            ////第二步:打开数据库
            //con.Open();
            ////第三步:实例化DateSet建立数据缓存区
            //DataSet ds = new DataSet();
            ////第四步:实例化检索语句
            //SqlDataAdapter da = new SqlDataAdapter("SELECT 珠宝名称 FROM 手镯信息", con);
            ////把存放在缓存区内的数据通过Fill方法添加到数据库中
            //da.Fill(ds);
            ////设定数据源
            //comboBox1.DataSource = ds.Tables[0].DefaultView;
            ////显示字段
            //comboBox1.DisplayMember = "珠宝名称";

            //连接数据库
            SqlConnection conn = new SqlConnection("server=(local);uid=sa;pwd=wxniit;database=手镯营销系统");
            //开启连接
            conn.Open();
            //建立SQL语句
            SqlCommand cmd = new SqlCommand("SELECT 珠宝名称 FROM 手镯信息", conn);
            //SQL中的查询结果读入
            SqlDataReader dr = cmd.ExecuteReader();
            //把读入缓存区的结果循环添加到ComboBox的Item中
            while(dr.Read())
            {
                comboBox1.Items.Add(dr[0]).ToString();
            }
        }

        private void button1_Click(object sender, EventArgs e)
        {
            //关闭程序
            this.Close();
        }

        //当选择项改变时,激发SelectedIndexChanged事件
        private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
        {
            //把结果输出到文本框内
            textBox1.Text = comboBox1.SelectedItem.ToString();
        }

    }
}