C# 如何实现 两级联动

来源:互联网 发布:蒋中挺和肖秀荣 知乎 编辑:程序博客网 时间:2024/05/17 06:57

using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Linq;using System.Text;using System.Windows.Forms;using System.Data.SqlClient;namespace 实现cmbox两级联动{    public partial class FrmTWO : Form    {        public FrmTWO()        {            InitializeComponent();        }        string str = "Data Source=.;Initial Catalog=MySchool;Integrated Security=True";               private void cboGrade_SelectedIndexChanged(object sender, EventArgs e)        {           string name =cboSubjectName.Text;        int subjectid=GetID(name);            SqlConnection conn = new SqlConnection(str);            string sql = @"select * from subject where gradeid=@id";            SqlParameter para = new SqlParameter("@id",subjectid);            SqlCommand cmd = new SqlCommand(sql,conn);            cmd.Parameters.Add(para);            SqlDataAdapter adap = new SqlDataAdapter();            adap.SelectCommand = cmd;            DataSet ds = new DataSet();            adap.Fill(ds,"fill");            cboSubjectName.DataSource=ds.Tables["fill"];            cboSubjectName.ValueMember = "subjectId";            cboSubjectName.DisplayMember = "subjectName";                   }        private int  GetID(string name)        {            SqlConnection conn = new SqlConnection(str);            string sql = @"select subjectid from subject";            SqlCommand cmd = new SqlCommand(sql,conn);            conn.Open();          int id=Convert.ToInt32(  cmd.ExecuteScalar());            //cboGrade.DataSource = ds.Tables["subjectinfo"];            //cboGrade.ValueMember = "subjectid";            //cboGrade.DisplayMember = "subjectName";          conn.Close();            return id ;        }        private void Form1_Load(object sender, EventArgs e)        {                        SqlConnection conn = new SqlConnection(str);            string sql = "select * from grade";            SqlDataAdapter adap = new SqlDataAdapter(sql,conn);            DataSet ds = new DataSet();            adap.Fill(ds,"gradeinf");            cboGrade.DataSource = ds.Tables["gradeinf"];            cboGrade.ValueMember = "gradeid";            cboGrade.DisplayMember = "gradeName";        }    }}



0 0
原创粉丝点击