본문 바로가기
wpf/wpf layout 및 문법

[wpf] MessageBox 사용법 및 예제

by devjh 2020. 10. 1.
반응형

이번 게시글에서는 MessageBox 사용법에 대해 포스팅하겠습니다.

 

MessageBox는 사용자에게 정보를 주거나 정보를 선택시킬때 주로 사용합니다.

 

window로 창을 커스터마이징 하여 사용하는 경우도 있지만

 

(window사용법)

 

[wpf] 화면 이동하기 -2- Window 사용법, 예제(사용자 입력 받기)

화면 이동하기는 총 네개의 게시글로 구성되어 있습니다. 1. Page 2. Window 3. TabControl 4. UserControl 이번 게시글에서는 Window를 사용하여 화면을 이동해보겠습니다. Window는 화면을 이동하는게 아니라

frozenpond.tistory.com

 

닷넷프레임워크에 내장된 MessageBox를 사용하면 보다 간편하게 사용자와 통신할 수 있습니다.

 

예제로 확인해보겠습니다.

 

1. MainWindows.xaml

<Window x:Class="MessageBoxTest.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:MessageBoxTest"
        mc:Ignorable="d"
        Title="MainWindow" Height="450" Width="800">
    <Grid>
        <Button Height="50" Width="120" Content="버튼" Click="Button_Click"></Button>
    </Grid>
</Window>

이번예제에서 View 단에는 하나의 버튼만 넣겠습니다.

 

 

2. MainWindows.cs

namespace MessageBoxTest
{
    /// <summary>
    /// MainWindow.xaml에 대한 상호 작용 논리
    /// </summary>
    public partial class MainWindow : Window
    {
        public MainWindow()
        {
            InitializeComponent();
        }

        private void Button_Click(object sender, RoutedEventArgs e)
        {
            MessageBox.Show("내용","제목");
        }
    }
}

버튼을 클릭하면 MessageBox.Show("내용","제목") 을 실행시키는 예제입니다.

 

버튼 클릭시 다음과같은 MessageBox 가 등장합니다.

 

MessageBox.Show("information을 추가하였습니다.","제목",MessageBoxButton.OK,MessageBoxImage.Information);

세번째, 네번째 매개변수를 위의 코드로 추가한 후 버튼 클릭하면 아래와 같은 MessageBox가 등장합니다.

 

세번째 매개변수에 들어가는 Enum은 네개의 종류가 있습니다.

 

  • MessageBoxButton.Ok
  • MessageBoxButton.YesNo
  • MessageBoxButton.OkCancle
  • MessageBoxButton.YesNoCancel

 

네번째 매개변수에 들어가는 Enum은 여러가지가 있지만

 

자주 사용하는  Information, Error, Question 세가지를 예제로 확인해 보겠습니다.

 

3. MessageBox 예제

private void Button_Click(object sender, RoutedEventArgs e)
{
    MessageBoxResult mbr =  MessageBox.Show("MessageBox 사용법을 이해하셨나요?.","Final Question",MessageBoxButton.YesNo,MessageBoxImage.Question);

    if(mbr == MessageBoxResult.Yes)
    {
        MessageBox.Show("축하합니다.", "Result", MessageBoxButton.OK, MessageBoxImage.Information);
    }
    else if(mbr == MessageBoxResult.No)
    {
        MessageBox.Show("이런...", "Result", MessageBoxButton.OK, MessageBoxImage.Error);
    }
}

 

MessageBox에서 사용자가 클릭한 결과는 MessageBoxResult의 객체에 반환됩니다.

 

반환된 값을 확인하여 로직을 진행시킨 예제입니다.

 

 

 

반응형

댓글