ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • WPF LOGIN
    C# 2022. 5. 25. 12:39

    WPF와 DB연동을 통해 간단한 로그인 창을 제작해보자

    디자인

    완성된 디자인 코드이다.

    <Window x:Class="_037_Login.MainWindow"
            xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
            xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
            xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
            xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
            xmlns:local="clr-namespace:_037_Login"
            mc:Ignorable="d"
            Title="MainWindow" Height="340" Width="300" Background="#6667AB">
        <Border Background="White" Margin="20">
            <StackPanel Margin="20">
                <TextBlock Text="Login" FontSize="20" HorizontalAlignment="Center"/>
                <Separator Background="SteelBlue"/>
                <TextBlock  Text="UserName" FontSize="16" Margin="0,5"/>
                <TextBox x:Name="txtUserName" FontSize="16"/>
                <TextBlock  Text="Password" FontSize="16" Margin="0,5"/>
                <PasswordBox x:Name="txtPassword" FontSize="16"/>
                <Button x:Name="btnLogin" Content="Login" FontSize="16" Width="100" Margin="10,20" Click="btnLogin_Click"/>
            </StackPanel>
        </Border>
    </Window>

    디자인을 완성시켰으니 DB를 연동해보자

    talbe 생성

    LoginTable를 생성해주고 이름을 저장해줄 name과 비밀번호를 저장할 password를 nvarchar(50)으로 설정해준다.

    Sql

    SQLQuery를 작성해준다.

    실행결과

    이름은 Hyun 비번은 1234로 설정해두었다.

     

    namespace _037_Login
    {
     
        public partial class MainWindow : Window
        {
            string connStr = @"Data Source=(LocalDB)\MSSQLLocalDB;AttachDbFilename=C:\Users\konyang\source\repos\VP01\037_Login\Login.mdf;Integrated Security=True";
            public MainWindow()
            {
                InitializeComponent();
            }
    
            private void btnLogin_Click(object sender, RoutedEventArgs e)
            {
                SqlConnection conn = new SqlConnection(connStr);
    
                conn.Open();
    
                string sql = string.Format("SELECT COUNT(*) FROM LoginTable WHERE name='{0}' AND password = '{1}'", txtUserName.Text, txtPassword.Password);
    
                SqlCommand comm = new SqlCommand(sql, conn);
                int count = Convert.ToInt32(comm.ExecuteScalar());
    
                conn.Close();
    
                if (count == 1)
                    MessageBox.Show("Login 성공!");
                else
                    MessageBox.Show("Login 실패!");
            }
        }
    }

    메인의 코드이다.

    name과 password를 txtUserName.Text와 txtPassword.Password와 비교하여 if문을 사용하여 메세지를 출력한다.

    실행결과

    실행결과

    'C#' 카테고리의 다른 글

    WPF 시계만들기  (0) 2022.06.16
    WPF Splash  (0) 2022.06.01
    ACCESS를 사용한 DB연결 -2  (0) 2022.05.11
    ACCESS를 사용한 DB연결 -1  (0) 2022.05.04
    C# WPF 체크박스  (0) 2022.04.13

    댓글

Designed by Tistory.