美文网首页
商品信息录入界面功能设计

商品信息录入界面功能设计

作者: 三百块 | 来源:发表于2018-05-25 21:32 被阅读0次

    一、本节功能演示

    本节主要是为库管员页面增加商品信息录入功能,下图为本节功能演示: 本节功能实现5.gif

    二、下面为大家介绍功能实现的详细步骤:

    1、配置连接字符串

    在项目开始前先学习了以下字符串的配置,方法如下:

    1、在“解决方案资源管理器”中的“引用”条目上右键添加 System.Configuration
    2、修改项目的 App.config 文件,如下:

    <?xml version="1.0" encoding="utf-8" ?>
    <configuration>
        <startup> 
            <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" />
        </startup>
    </configuration>
    
    <?xml version="1.0" encoding="utf-8" ?>
    <configuration>
        <connectionStrings>
           <add name="SuperMarketSales"
    connectionString="Data Source=.;Initial Catalog=SuperMarketSales;Integrated Security=True"
    providerName="System.Data.SqlClient" />
        </connectionStrings>
        <startup> 
            <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" />
        </startup>
    </configuration>
    

    3、在需要连接数据库的窗口代码中添加 using System.Configuration;
    4、按如下语法引用连接字符串

    String connStr = ConfigurationManager.ConnectionStrings["SuperMarketSales"].ConnectionString;
    

    2、创建商品信息表

    在服务器上,创建商品信息表。可以是前期数据库设计的表结构,也可以参照如下示例结构:

    表名 数据类型 允许空 备注
    ID varchar(50) 商品条码(主键)
    NAME varchar(20) 商品名称
    PRICE float 商品价格
    SUPPLIER int 供应商代码(外键)
    SPEC varchar(20) 商品规格
    REMARK varchar(100) 备注

    3、界面设计

    3.1初始界面设计

    1、界面如下: 初始界面.png
    2、属性设计 界面属性设置.PNG

    3.2升级界面设计

    1、效果如图所示: 界面升级.png

    2、功能的实现
    (1)属性设计
    方法一:
    1) 手动设置Items属性

    2) 绑定数据源,自动加载数据 控件属性实现.gif

    方法二:

                SqlConnection sqlConn = new SqlConnection(connStr);
                try
                {
                    // 连接数据库
                    sqlConn.Open();
    
                    // 构造查询命令
                    String sqlStr = "select * from SUPPLIER order by CODE";
                    SqlCommand cmd = new SqlCommand(sqlStr, sqlConn);
    
                    // 将该查询过程绑定到DataAdapter
                    SqlDataAdapter adp = new SqlDataAdapter();
                    adp.SelectCommand = cmd;
    
                    // 将DataSet和DataAdapter绑定
                    DataSet ds = new DataSet();
                    // 自定义一个表(MySupplier)来标识数据库的SUPPLIER表
                    adp.Fill(ds, "MySupplier");
    
                    // 指定ComboBox的数据源为DataSet的MySupplier表
                    this.cbb_Supplier.DataSource = ds.Tables["MySupplier"];
                    this.cbb_Supplier.DisplayMember = "NAME"; 
                     // ComboBox下拉列表显示的内容,这里显示供应商名称
                    this.cbb_Supplier.ValueMember = "CODE";  
                     // ComboBox另外还携带一个隐藏的值叫ValueMember,指定为供应商代码
                    this.cbb_Supplier.SelectedIndex = 0;
                      }
                     catch (Exception exp)
                     {
                    MessageBox.Show("访问数据库错误:" + exp.Message);
                     }
                      finally
                     {
                      sqlConn.Close();
                     }
    

    4、编写增强功能的录入商品信息界面

    其主要步骤为: 商品信息录入界面功能设计.png

    代码如下:

     private void bt_Ok_Click(object sender, EventArgs e)
            {
                String id = this.tb_Id.Text.Trim();
                String name = this.tb_Name.Text.Trim();
                float price = float.Parse(this.tb_Price.Text.Trim());
                String spec = this.tb_Spec.Text.Trim();
                String remark = this.tb_Remark.Text.Trim();
                int supplier = int.Parse(this.cbb_Supplier.SelectedValue.ToString());
    
                // 连接字符串,注意与实际环境保持一致
                String connStr = ConfigurationManager.ConnectionStrings["SuperMarketSales"].ConnectionString;
                SqlConnection sqlConn = new SqlConnection(connStr);
                try
                {
                    // 连接数据库
                    sqlConn.Open();
    
                    // 构造命令
                    String sqlStr = "insert into GOODS(ID, NAME, PRICE, SPEC, REMARK, SUPPLIER) values(@id, @name, @price, @spec, @remark, @supplier)";
                    SqlCommand cmd = new SqlCommand(sqlStr, sqlConn);
    
                    // SQL字符串参数赋值
                    cmd.Parameters.Add(new SqlParameter("@id", id));
                    cmd.Parameters.Add(new SqlParameter("@name", name));
                    cmd.Parameters.Add(new SqlParameter("@price", price));
                    cmd.Parameters.Add(new SqlParameter("@spec", spec));
                    cmd.Parameters.Add(new SqlParameter("@remark", remark));
                    cmd.Parameters.Add(new SqlParameter("@supplier", supplier));
    
                    // 将命令发送给数据库
                    int res = cmd.ExecuteNonQuery();
    
                    // 根据返回值判断是否插入成功
                    if (res != 0)
                    {
                        MessageBox.Show("商品信息录入成功");
                    }
                    else
                    {
                        MessageBox.Show("商品信息录入失败");
                    }
                }
                catch (Exception exp)
                {
                    MessageBox.Show("访问数据库错误:" + exp.Message);
                }
                finally
                {
                    sqlConn.Close();
                }
            }
    
            private void bt_Cancel_Click(object sender, EventArgs e)
            {
                this.Close();
            }
    

    相关文章

      网友评论

          本文标题:商品信息录入界面功能设计

          本文链接:https://www.haomeiwen.com/subject/qvsujftx.html