ساخت فرم ورود (Login) در سي شارپ

در این درس می خواهیم نحوه ساخت فرم لاگین را به شما آموزش دهیم. فرض بر این است که شما مشخصات تعدادی شخص را در بانک ذخیره کرده اید و می خواهید قبل از ورود به برنامه، این اشخاص اعتبارسنجی شوند. برای جلوگیری از کدنویسی و برای اینکه شما با اصل موضوع ساخت فرم لاگین آشنا شوید، ما در اینجا از بانک University استفاده می کنیم که دارای یک جدول به نام Students با تعدادی داده، به صورت زیر می باشد:
create-login-form-in-c#-01
این بانک را از لینک زیر دانلود کرده و به برنامه اضافه کنید :

فرم لاگین ما بسیار ساده بوده و فقط نام و نام خانوادگی افراد را قبل از ورود مورد سوال قرار می دهد. یک فرم به برنامه به صورت زیر اضافه کرده و نام آن را Login بگذارید :

create-login-form-in-c#-02

create-login-form-in-c#-03

بعد از ایجاد فرم کنترل های را به صورت زیر بر روی آن قرار دهید :

create-login-form-in-c#-04

حال بر روی دکمه دو بار کلیک کرده و کدهای زیر را در داخل آن بنویسید :

string ConnectionString = @"Data Source=(LocalDB)\MSSQLLocalDB;" +
                          @"AttachDbFilename=C:\Users\VisualCsharp\Desktop\University.mdf;" +
                          @"Integrated Security=True;Connect Timeout=30";

private void button1_Click(object sender, EventArgs e)
{
    if (textBox1.Text == "" || textBox1.Text == "")
    {
        MessageBox.Show("Please provide UserName and Password");
        return;
    }
    try
    {
        SqlConnection SqlConnection1 = new SqlConnection(ConnectionString);
        SqlCommand SqlCommand1 = new SqlCommand(
            "SELECT * FROM Students WHERE FirstName=@FirstName AND LastName=@LastName", SqlConnection1);
        SqlCommand1.Parameters.AddWithValue("@FirstName", textBox1.Text);
        SqlCommand1.Parameters.AddWithValue("@LastName" , textBox2.Text);

        SqlConnection1.Open();
        SqlDataAdapter SqlDataAdapter1 = new SqlDataAdapter(SqlCommand1);
        DataSet DataSet1 = new DataSet();
        SqlDataAdapter1.Fill(DataSet1);
        SqlConnection1.Close();

        int count = DataSet1.Tables[0].Rows.Count;

        if (count == 1)
        {
            MessageBox.Show("Login Successful!");
            this.Hide();
            Form1 form1 = new Form1();
            form1.Show();
        }
        else
        {
            MessageBox.Show("Login Failed!");
        }
    }
    catch (Exception ex)
    {
        MessageBox.Show(ex.Message);
    }
}

همانطور که می دانید فرم Login باید قبل از فرم اصلی برنامه نمایش داده شود، برای این منظور بر روی فایل Program.cs دو بار کلیک کرده و فرم Login را پیشفرض کنید. این کار باعث می شود که هنگام اجرای برنامه ابتدا فرم Login نمایش داده شود :
create-login-form-in-c#-05
برنامه را اجرا کرده و نام و نام خانوادگی یکی از اشخاص که در شکل اول آمده است را وارد کنید و بر روی دکمه Login کلیک و نتیجه را مشاهده نمایید.