博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
C#登录窗口(访问数据库)的制作,类文件的制作及使用
阅读量:5116 次
发布时间:2019-06-13

本文共 2443 字,大约阅读时间需要 8 分钟。

一、类文件的编写及使用。

可以单独建立一个类文件(使用记事本),然后包含在项目中,使用时加上该类的命名空间,就可以使用这个类了。

如何在一个项目里包含一个类文件?

1.在项目里新建一个文件夹;

2.将类文件放在这个文件夹里;

3.在vs界面的解决方案资源管理器里,点击“显示全部文件”按钮,然后选中这些文件,右击—>”包含在项目里”;

4.在项目的其他地方引用命名空间后,就可以使用这些类了。

二、登录窗口的制作

我们可以借助一个类文件生成器(Code Smith),帮助我们制作需要的类,下面的是使用Code Smith连接数据库的表后,根据模板生成的类。

点击登陆

//点击登陆按钮        private void button1_Click(object sender, EventArgs e)        {            string userName = textUser.Text;            string PWD = textPWD.Text;            //调用方法,访问数据库,核对数据            LoginData data= new LoginDA().Select(userName ,PWD);            //如果访问到数据,弹出主窗口            if (data != null)            {                Main f = new Main();                f.Show();            }            else            {                MessageBox.Show("登录失败");            }                   }

 

三、捕获异常

这是一个类文件里的查询数据方法,

把可能出现问题的步骤放在try里面,如果有异常(比如,连接数据库出现网络问题),进入catch,我们可以选择抛出此异常或其他操作。finally里面是不受异常影响,总是执行的语句。

//根据输入的用户名、密码访问数据库        public LoginData Select(string userName,string PWD)        {            LoginData data = null;            _Cmd.CommandText = "select * from login where userName = @userName and userPwd=@userPwd";            _Cmd.Parameters.Clear();            _Cmd.Parameters.AddWithValue("@userName", userName);            _Cmd.Parameters.AddWithValue("@userPwd", PWD);            try            {                _Conn.Open();                SqlDataReader dr = _Cmd.ExecuteReader();                while (dr.Read())                {                    data = new LoginData();                    data.UserName = (String)dr["userName"];                    data.UserPwd = (String)dr["userPwd"];                    data.UserIdentity = (String)dr["userIdentity"];                }                dr.Close();                dr.Dispose();            }            catch (Exception ex)            {                throw ex;            }            finally            {                _Conn.Close();                _Cmd.Dispose();                _Conn.Dispose();            }            return data;        }

下面是关闭数据库服务后,调用上面方法的结果(抛出异常)

三、隐藏登录窗口

if (data != null)            {                Main f = new Main();                this.Visible = false;//设置登录窗口不可见                this.Owner = f;//设置为main窗口的子窗口,main窗口关后,登录窗口也跟着关闭                f.WindowState = FormWindowState.Maximized;//登录后,主窗口最大化                f.Show();            }

四、在主窗口实现“欢迎您,xxx”

效果图

代码:

重写Main窗口的构造函数

创建Main窗口时,将用户名传给构造函数

转载于:https://www.cnblogs.com/wllhq/p/4341580.html

你可能感兴趣的文章
最小化安装k8s
查看>>
多线程经典模型-生产者消费
查看>>
【最短路】Walls
查看>>
Python策略模式实现源码分享
查看>>
千氪|比特币十周年大事记
查看>>
SpringMVC学习系列-解决GET请求时中文乱码的问题
查看>>
工程师追查线上问题(或运维)常用的shell命令
查看>>
c语言中的scanf在java中应该怎么表达,Scanner类。
查看>>
java poi对Excel文件加密
查看>>
15.外键
查看>>
评论列表显示及排序,个人中心显示
查看>>
【Spark】SparkStreaming-如何使用checkpoint
查看>>
JS与JQ合并对象
查看>>
算术表达式嵌套
查看>>
SOAP1.1 VS SOAP1.2
查看>>
Geotrellis系列文章链接
查看>>
Buildings 分类: ACM 多校 ...
查看>>
使用用WCF中的双工(Duplex)模式将广告图片推送到每个Winform客户端机子上
查看>>
KEIL, MDK 关于C99结构体变量初始化
查看>>
mysql备份
查看>>