(C#,WPF강좌, WPF교육, WPF학원)XAML이란,XAML개요
2.1 XAML 이란?
http://ojc.asia/bbs/board.php?bo_table=WPF&wr_id=156
ojc.asia
- MS에서 개발한 Silverlight, WPF, Xamarin 프로그래밍의 추가적인 인터페이스로 객체(Window, Button, TextBox, Grid 등)를 XML 마크업 형태로 정의한다.
- HTML이 웹 페이지를 시각적으로 표시하기 위해 내부적으로 사용되는 언어인 것처럼, XAML은 응용 프로그램을 시각적으로 표시하기 위해 내부적으로 사용되는 XML 기반의 언어이다.
- C# 프로그래밍 언어가 아닌 XML 태그를 사용하여 UI를 구성해서 UI와 로직을 분리할 수 있도록 해준다.
- XAML을 통해서 디자이너가 직접 UI 구성을 할 수 있게 되었고 다이나믹한 화면 구성이 가능해졌다. 즉 개발자, 디자이너가 모두 사용 가능한 중간 형태의 UI를 위한 XML 코드이다.
- WPF에서 XAML을 무조건 필요로 하는 것은 아니며 XAML 없이 순수한 C#코드로 WPF 클래스들을 이용해서 동적으로 어플리케이션을 만들 수 있다.
- XAML을 이용하여 XML 코드에서 애니메이션 효과를 구현할 수 있고 이벤트 트리거를 사용하여 사용자의 입력에 동일한 방식으로 응답하도록 구성할 수 있다.
- WPF는 벡터 방식 이미지를 지원하므로 크기를 늘려도 계단현상이 발생하지 않는다.
https://www.youtube.com/watch?v=innYXvo9WpA&list=PLxU-iZCqT52Cmj47aKB1T-SxI33YL7rYS&index=2&t=29s

2.2 XAML vs C# 샘플코드
아래 예문을 참조하자.
[C#]
// StackPanel 생성
StackPanel stackPanel = new StackPanel();
this.Content = stackPanel; //ContentProperty
// TextBlock
TextBlock textBlock = new TextBlock();
textBlock.Margin = new Thickness(10);
textBlock.Text = "Welcome to the World of XAML";
stackPanel.Children.Add(textBlock);
// Button
Button button = new Button();
button.Margin= new Thickness(20);
button.Content = "Click Me!";
stackPanel.Children.Add(button);
[XAML]
<Window> <StackPanel>
<TextBlock Margin="20">Welcome to the World of XAML</TextBlock>
<Button Margin="10" HorizontalAlignment="Right">OK</Button>
</StackPanel>
</window>
[C# 실습]
Wpf 프로젝트 생성 후 아래 C# 코드 비하인드로 작성해 보자.
[MainWindow.xaml.cs]
using System;
using System.Text;
using System.Windows;
using System.Windows.Controls;
namespace WpfApplication1
{
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
// Create the StackPanel
StackPanel stackPanel = new StackPanel();
this.Content = stackPanel;
// Create the TextBlock
TextBlock textBlock = new TextBlock();
textBlock.Text = "Welcome to XAML";
textBlock.Height = 20;
textBlock.Width = 200;
textBlock.Margin = new Thickness(50);
stackPanel.Children.Add(textBlock);
// Create the Button
Button button = new Button();
button.Content = "OK";
button.Height = 20;
button.Width = 50;
button.Margin = new Thickness(0);
stackPanel.Children.Add(button);
}
}
}
[XAML]
<Window x:Class="WpfApplication1.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:WpfApplication1"
mc:Ignorable="d"
Title="MainWindow" Height="350" Width="525">
<StackPanel Margin="90">
<TextBlock Text = "Welcome to XAML Tutorial" Height = "20" Width = "200" Margin = "50"/>
<Button Content = "Ok" Height = "20" Width = "60" Margin = "0"/>
</StackPanel>
</Window>

#WPFXAML, #XAML이란, #XAML, #WPF교육, #WPF강좌, #WPF학원, #WPF동영상
WPFXAML, XAML이란, XAML, WPF교육, WPF강좌, WPF학원, WPF동영상
댓글 없음:
댓글 쓰기