C# WinForm课程查询功能实现

C# WinForm课程查询功能实现

本篇文章将介绍如何使用 C# 和 WinForm 创建一个简单的课程查询功能。该功能允许用户根据学期和课程名称进行查询,并将结果显示在 DataGridView 控件中。

代码示例:

namespace test1
{
    public partial class searchclassForm : Form
    {
        public searchclassForm()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e, int _)
        {
            while (dataGridView1.Rows.Count != 0)
            {
                dataGridView1.DataSource = null;
            }
            if (comboBoxterm.Text == '' && textBoxclass.Text == '')
            {
                MessageBox.Show('请输入查询信息!');
            }
            else if (comboBoxterm.Text != '' && textBoxclass.Text == '')
            {
                SqlConnection conn = new SqlConnection(地信212韩佳峻.connectionString);
                conn.Open();
                string sql = 'select claname as 课程名,term as 学期';
                SqlDataAdapter adp1 = new SqlDataAdapter(sql, conn);
                DataSet ds = new DataSet();
                adp1.Fill(ds);
                //载入基本信息
                dataGridView1.DataSource = ds.Tables[0].DefaultView;
                conn.Close();
            }
            else if (textBoxclass.Text != '' && comboBoxterm.Text == '')
            {
                
                SqlConnection conn = new SqlConnection(地信212韩佳峻.connectionString);
                conn.Open();
                //textBox1.Text.Trim()  textBox2.Text.Trim()
                string sql = 'select claname as 课程名,term as 学期';
                SqlDataAdapter adp1 = new SqlDataAdapter(sql, conn);
                DataSet ds = new DataSet();
                adp1.Fill(ds);
                //载入基本信息
                dataGridView1.DataSource = ds.Tables[0].DefaultView;
                conn.Close();


            }
            else if (textBoxclass.Text != '' && comboBoxterm.Text != '')
            {
               
                SqlConnection conn = new SqlConnection(地信212韩佳峻.connectionString);
                conn.Open();
                //textBox1.Text.Trim()  textBox2.Text.Trim()
                string sql = 'select claname as 课程名,term as 学期';
                SqlDataAdapter adp1 = new SqlDataAdapter(sql, conn);
                DataSet ds = new DataSet();
                _ = adp1.Fill(ds);
                //载入基本信息
                dataGridView1.DataSource = ds.Tables[0].DefaultView;
                conn.Close();

            }



        }

        private void dataGridView1_RowHeaderMouseClick(object sender, DataGridViewCellMouseEventArgs e)
        {
            if (dataGridView1.SelectedCells.Count != 0)
            {
                string claid = dataGridView1.SelectedRows[0].Cells[0].Value.ToString();
                SqlConnection conn = new SqlConnection(地信212韩佳峻.connectionString);
                conn.Open();
                //textBox1.Text.Trim()  textBox2.Text.Trim()
                string sql = 'select sctime as 上课时间,location as 上课地点 from sctime where claid='+claid;
                SqlDataAdapter adp1 = new SqlDataAdapter(sql, conn);
                DataSet ds = new DataSet();
                adp1.Fill(ds);
                //载入基本信息
                conn.Close();
            }
        }

        // ...其他代码...
    }
}

代码说明:

  • 该代码定义了一个名为 searchclassForm 的窗体类,该类包含一个按钮 button1 和两个 DataGridView 控件 dataGridView1dataGridView2
  • 当用户点击 button1 时,程序会根据用户在 comboBoxtermtextBoxclass 中输入的查询条件,从数据库中查询相应的课程信息。
  • 查询结果将显示在 dataGridView1 中。
  • 当用户点击 dataGridView1 中的一行时,程序会根据该行的 claid 值查询该课程的详细信息,并将详细信息显示在 dataGridView2 中。

改进建议:

  • 可以使用参数化查询来防止 SQL 注入攻击。
  • 可以添加数据验证逻辑,以确保用户输入的数据是有效的。
  • 可以添加错误处理机制,以处理数据库连接失败等异常情况。

希望这篇文章能够帮助你了解如何使用 C# 和 WinForm 创建一个简单的课程查询功能。

标签: 常规


原文地址: https://gggwd.com/t/topic/fPMb 著作权归作者所有。请勿转载和采集!