利用WinForm基础创建包裹管理系统

本文介绍了如何使用WinForm在.NET开发中创建基本的Windows应用程序,包括新建项目、窗体与控件的应用、数据库连接、属性与事件设置,以及如何实现新增、修改和筛选查询功能。
摘要由CSDN通过智能技术生成

WinForm简介

    WinForm是.NET开发平台提供的用于开发WinForm应用程序的一个开发环境,命名空间System.Windows.Forms中包含用于创建Windows应用程序用户界面所需要的类。

①WinForm程序的新建 

    选择Visual Studio 2022菜单栏中的“文件”→“新建”→“项目”命令,打开“新建项目”对话框。在“新建项目”对话框中,选择“Windows窗体应用程序”选项,自定义名称并选择保存位置,然后单击“添加”按钮创建一个WinForm程序。如图所示。(名称我这里是默认的,你也可以自己自定义一个)

    Windows程序中包含了多种不同类型的文件。新建的项目的文件结构包含(1)Form1.cs、(2)Form1.cs逻辑代码界面、(3)Form1.Designer.cs、(4)Program.cs

②窗体与控件

     Windows窗体和控件是开发C#应用程序的基础,每个Windows窗体和控件都是一个对象。窗体是一个可以用来为用户提供信息以及接收其输入的窗口。控件是能够提供用户界面接口功能的组件。控件可以通过属性设置控制其显示效果,可以对相应的事件做出反应,实现控制或交互功能。

    现在我们来利用窗体和控件设计包裹管理系统的主页面。如图所示。

    其用到的控件有groupBox、button、dataGridView。可以根据自己喜欢的颜色、字体进行个性化设计,美化主页。

③创建一个类,以进行数据库连接

    为了实现button、dataGridView以及后面控件的有效化,所以我们要进行数据库连接。如图所示。

    首先,先创建一个类,自定义名称(我这里命名为DataBase),然后输入代码,进行数据库连接。代码如下:String strConnection = "server=XiaoDu;database=Bird;uid=sa;pwd=123456";
                         SqlConnection conn = new SqlConnection(strConnection);
                         return conn;

    (注意server=自己的主机名,sa以及pwd也是自己设置的)

④属性与事件

    窗体和控件都有许多属性,事件指的是可能发生在对象上的,能够被该对象识别同时通过该代码响应或处理的行为。为了实现包裹管理系统,我们要对窗体和控件设置相关的点击事件。如点击刷新按钮,页面就刷新;点击新增按钮,就可以增加新的数据等等。如图所示,在刷新按钮中写入代码,即可实现刷新功能。

    同时也别忘了给From1.cs连接数据库,代码也是一样的。

⑤控件连接窗体

    因为新增、修改和筛选查询功能需要打开新页面,所以我们要新增窗体,然后连接,实现该功能。如图所示。

(1)新增窗体

(2)修改窗体

(3)筛选查询窗体


    设计完新增的窗体后进行点击事件连接。

    (button2为新增,button3为修改,button5为筛选查询)代码几乎一样。

      increase xz = new increase();
      xz.ShowDialog();

    然后就可以实现点击按钮打开所连接的页面了。

接下来我们再设置删除按钮的点击事件,以实现系统的删除功能。代码如下:

DataBase db = new DataBase();
SqlConnection conn = db.getConn();
conn.Open();
int rowindex = dataGridView1.CurrentRow.Index;
String value0 = dataGridView1.Rows[rowindex].Cells[0].Value.ToString();
String sql = "delete from Parcel_Table where parcelID='" + value0 + "'";
SqlCommand comm = new SqlCommand(sql, conn);
comm.ExecuteNonQuery();
MessageBox.Show("删除成功!");
conn.Close();

(注意:button4即为删除按钮)

⑥为所连接的窗体实现其功能

(1)新增窗体

为实现它的新增与取消按钮功能,我们双击新增按钮进入新增窗体编辑代码页面。然后在button1中写入代码,代码如下:

DataBase db = new DataBase();
SqlConnection conn = db.getConn();
conn.Open();
String sql = "insert into Parcel_Table values('" + textBox1.Text + "','" + textBox2.Text + "','" + textBox3.Text + "','" + textBox4.Text + "','" + textBox5.Text + "','" + textBox6.Text + "','" + textBox7.Text + "','" + textBox8.Text + "')";
SqlCommand comm = new SqlCommand(sql, conn);
comm.ExecuteNonQuery();
MessageBox.Show("新增成功!");
conn.Close();
textBox1.Text = "";
textBox2.Text = "";
textBox3.Text = "";
textBox4.Text = "";
textBox5.Text = "";
textBox6.Text = "";
textBox7.Text = "";
textBox8.Text = "";

取消按钮功能的实现即在button2中写入:

this.Close();

(注意:表名需与自己的数据库表名一致)

(2)修改窗体

实现修改功能和实现新增功能的步骤相同,唯一不同的是修改使用的是update语句。代码如下:

DataBase db = new DataBase();
SqlConnection conn = db.getConn();
conn.Open();
String sql = "update Parcel_Table set Status ='" + textBox4.Text + "',CourierCompany ='" + textBox5.Text + "',TrackingNumber ='" + textBox6.Text + "',CreateTime='"+textBox7.Text+ "',LastUpdateTime='"+textBox8.Text+ "' where ParcelID=' "+ textBox1.Text +" '";
SqlCommand comm = new SqlCommand(sql, conn);
comm.ExecuteNonQuery();
MessageBox.Show("修改成功!");
conn.Close();
textBox1.Text = "";
textBox2.Text = "";
textBox1.Text = "";
textBox2.Text = "";
textBox3.Text = "";
textBox4.Text = "";
textBox5.Text = "";
textBox6.Text = "";
textBox7.Text = "";
textBox8.Text = "";   

取消功能代码与新增窗体一致。

(3)筛选查询窗体

为了能够实现利用用户ID查询数据功能,即代码如下:

DataBase db = new DataBase();
SqlConnection conn = db.getConn();
//打开连接
conn.Open();
//定义sql语句
String sql = "select* from Parcel_Table where UserID = ('" + textBox1.Text + "')";
//创建sql执行对象
SqlCommand comm = new SqlCommand(sql, conn);
//创建数据适配器
SqlDataAdapter sda = new SqlDataAdapter();
//执行sql语句
sda.SelectCommand = comm;
//创建数据集
DataSet ds = new DataSet();
//将对应test表数据保存到数据集合中
sda.Fill(ds, "test1");
//把数据集合中第一个表的数据填充到dataGirdView中
dataGridView1.DataSource = ds.Tables[0];
//关闭连接
conn.Close();

这样就可以完成简单的包裹管理系统啦。 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值