weixin_45843354 2020-04-08 09:36 采纳率: 0%
浏览 462

运行登录窗体时,显示未将对象引用设置到对象的实例

图片说明

using System;https://img-ask.csdn.net/upload/202004/08/1586312099_392212.png
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;

using System.Data.SqlClient;

namespace StudentInfoSystem
{
public partial class frmLogin : Form
{
public frmLogin()
{
InitializeComponent();
}

    public static string userName ;//记录登录用户名字//主窗体中使用
    public static string userRight;//记录登录用户的权限//主窗体中使用

    SqlConnection conn;
    SqlCommand com;
    SqlDataAdapter da;
    SqlDataReader dr;
    private void frmLogin_Load(object sender, EventArgs e)
    {

        try
        {
            conn = new SqlConnection("server=(local)\\sqlexpress;integrated security=true;database=StudentBC");
            DataSet ds = new DataSet();
            da = new SqlDataAdapter("select 用户名称 from 用户表", conn);
            if (conn.State == ConnectionState.Closed)
            {
                conn.Open();
            }
            da.Fill(ds, "用户表");
            conn.Close();
            cbxUserName.DataSource = ds.Tables["用户表"];
            cbxUserName.DisplayMember = "用户名称";
        }
        catch (Exception ex)
        {
            MessageBox.Show(ex.Message.ToString());
        }
    }

    private void cbxUserName_SelectedIndexChanged(object sender, EventArgs e)//查询权限值
    {
        try
        {
            com = new SqlCommand("select 用户名称,用户权限 from 用户表 where 用户名称='" + cbxUserName.Text + "'", conn);
            if (conn.State == ConnectionState.Closed)
            {
                conn.Open();
            }
            dr = com.ExecuteReader();



            if (dr.Read())


            {
                lblUserRight1.Text = dr["用户权限"].ToString();
                userRight = lblUserRight1.Text;
            }
            dr.Close();
            conn.Close();
        }
        catch (Exception ex)
        {
            MessageBox.Show(ex.Message.ToString());
        }
    }

    private void btnLogin_Click(object sender, EventArgs e)//可以用读取器类也可以用数据集类实现
    {
        //用数据集类实现
        try
        {
            da = new SqlDataAdapter("select * from 用户表 where 用户名称='" + cbxUserName.Text.Trim() + "' and 用户密码='" + txtUserPwd.Text.Trim() + "'", conn);
            DataSet ds = new DataSet();
            if (conn.State == ConnectionState.Closed)
            {
                conn.Open();
            }
            da.Fill(ds, "用户表");
            conn.Close();
            if (ds.Tables["用户表"].Rows.Count > 0)
            {
                userName = cbxUserName.Text;

                frmMain frmmain = new frmMain();
                this.Hide();
                frmmain.Show();
            }
            else
            {
                MessageBox.Show("用户名或密码错误!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
                txtUserPwd.Text = "";
                cbxUserName.Focus();
            }
        }
        catch (Exception ex)
        {
            MessageBox.Show(ex.Message.ToString());
        }
    }
        //用读取器类实现


    private void btnExit_Click(object sender, EventArgs e)
    {
        Application.Exit();
    }

    private void frmLogin_FormClosed(object sender, FormClosedEventArgs e)
    {
        Application.Exit();
    }

    private void frmLogin_Load_1(object sender, EventArgs e)
    {

    }



}

}

  • 写回答

1条回答 默认 最新

  • 小学狗喵喵叫 2020-04-08 10:03
    关注

    我不会,可以转问题到C#或者.net标签

    评论

报告相同问题?

悬赏问题

  • ¥15 matlab不知道怎么改,求解答!!
  • ¥15 永磁直线电机的电流环pi调不出来
  • ¥15 用stata实现聚类的代码
  • ¥15 请问paddlehub能支持移动端开发吗?在Android studio上该如何部署?
  • ¥20 docker里部署springboot项目,访问不到扬声器
  • ¥15 netty整合springboot之后自动重连失效
  • ¥15 悬赏!微信开发者工具报错,求帮改
  • ¥20 wireshark抓不到vlan
  • ¥20 关于#stm32#的问题:需要指导自动酸碱滴定仪的原理图程序代码及仿真
  • ¥20 设计一款异域新娘的视频相亲软件需要哪些技术支持