참조 강의 : 오라클자바커뮤니티
목적 : C#, XAML 기반의 WPF에서 HelloWorld 출력하기
새로운 프로젝트를 만들고, 도구 상자에서 컨트롤들을 끌어와 배치한다.
<!--MainWindow.xaml-->
<Window x:Class="WpfApp4.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:WpfApp4"
mc:Ignorable="d"
Title="MainWindow" Height="450" Width="800">
<Grid>
<Label x:Name="label" Content="Enter a Name?" HorizontalAlignment="Left" Margin="167, 118, 0, 0" VerticalAlignment="Top" />
<TextBox x:Name="textBox" HorizontalAlignment="Left" Height="23" Margin="278, 122, 0, 0" TextWrapping="Wrap" Text="" VerticalAlignment="Top" Width="120" TextChanged="textBox_TextChanged" />
<Button x:Name="button" Content="Click Me!" HorizontalAlignment="Left" Margin="416, 124, 0, 0" VerticalAlignment="Top" Width="75" Click="button_Click" />
<TextBlock x:Name="textBlock" HorizontalAlignment="Left" Margin="177, 175, 0, 0" TextWrapping="NoWrap" Text="Hello World! I am clickable" VerticalAlignment="Top" Width="314" MouseLeftButtonUp="textBlock_MouseLeftButtonUp" />
</Grid>
</Window>
cs 파일로 이동
기본적으로 UI 구성을 하고 있는 이니셜라이즈컴포넌트가 있고, 채워야할 이벤트 핸들러 메서드 채우기
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
}
private void button_Click(object sender, RoutedEventArgs e)
{
MessageBox.Show(textBox.Text + "님 환영합니다.", "Hello World!");
}
private void textBlock_MouseLeftButtonUp(object sender, MouseButtonEventArgs e)
{
MessageBox.Show("Hi There!", "Hello World", MessageBoxButton.OK, MessageBoxImage.Information);
}
}
간단한 이벤트 로직을 넣으면
MessageBox 띄우기 성공