설계및프로젝트기본I 2017년 1학기(02분반).

Slides:



Advertisements
Similar presentations
ⓒ 2015 NHN Entertainment Corp. Django 로 만드는 초간단 블로그 시스템운영팀 김영태 개발환경 구축.
Advertisements

1/ 편집 기능 사용하기 – 실습 1 글자 모양을 바꾸고 싶은 곳을 블록 설정 [ 글자 모양 ] 대화 상자에서 [ 글꼴 ] ‘ 궁서체 ’, [ 글자 색 ] ‘ 토마토색 ’ 으로 선택 → [ 설정 ] 클릭 → 글자 모양 변경.
Android 프로그램개발 환경. 학습 목표 ■ 교육 목표  JDK 설치  JDK 환경 설정  Eclipse 설치  Android SDK 설치  ADT Plug-in 설치  Android Virtual Device(AVD) 설치  Android 예제 프로그램.
목 차 C# 언어 특징 .NET 프레임워크 C# 콘솔 프로그램 C# 윈도우 프로그램 실습 프로그래밍세미나 2.
목차 Contents 무선인터넷용 비밀번호 설정방법 Windows 7 Windows 8 Windows XP MAC OS.
기초C언어 제1주 실습 강의 소개, C언어 개요, Cygwin/Eclipse 사용 컴퓨터시뮬레이션학과 2016년 봄학기
DB 프로그래밍 학기.
DB 프로그래밍 학기.
스마트워크(가상화) 외부 접속 방법 정보관리실.
149개의 실습예제로 배우는 Flash 8.
풀 다운 메뉴 File > New “intent” 이름을 넣고 OK 를 클릭한다.
컴퓨터프로그래밍 1주차실습자료 Visual Studio 2005 사용법 익히기.
新 연구관리 프로그램 SAP 설치 안내 1. SAP GUI 7.3 설치 2전자증빙 솔루션 설치 배포 :
Image & Video processing
코크파트너 설치 가이드 Window 7.
㈜디아이씨 SSLVPN 협력사 접속방법 2017년 4월.
ERP 전용 브라우저 설치 매뉴얼 (Windows 7)
윤 홍 란 다이알로그(대화상자) 윤 홍 란
CUDA Setting : Install & Compile
비주얼 프로그래밍(2분반) 강의노트 2분반 = 월/목.
J2ME Install 부산대학교 인공지능 연구실.
네트워크 프로그래밍 및 실습.
나민영 서경대학교 컴퓨터공학과 CGVR Lab 같이만들어보자 5주차 OpenCV 설정 및 기초.
설계및프로젝트기본I 2017년 1학기(02분반).
Visual Basic 함수.
마우스(Mouse) 다루기 컴퓨터응용 및 실습 I.
이벤트(Event) 처리하기 윈도우 프로그램에서는 이벤트를 통하여 실행 중인 프로그램에게 사용자의 요구사항을 알린다.
CHAPTER 02 OpenCV 개요 PART 01 영상 처리 개요 및 OpenCV 소개.
Visual Basic .NET 처음 사용하기.
Communication and Information Systems Lab. 황재철
1. C++ 시작하기.
제 2 장 WML 시뮬레이터 및 무선인터넷 서버 설치
소프트웨어 분석과 설계 Struts2 & JBOSS 설치하기
비주얼 프로그래밍 1분반 화/수.
학습목표 학습목차 다른 홈페이지의 HTML 파일 코드를 보는 방법에 대해 알아봅니다.
ASP.NET AJAX 비동기 게시판 작성 2007 컴퓨터공학실험( I )
비주얼 프로그래밍(2분반) 강의노트 2분반 = 월/목.
비주얼 프로그래밍 1분반 화/목.
반응형 웹 프로젝트
10장 tkinter로 GUI 만들기.
영상처리 실습 인공지능연구실.
Lab 1 Guide: 교재 2장 DrawX ( 쪽)
ERP 전용 브라우저 설치 매뉴얼 (Windows 7)
Linux/UNIX Programming
3D 프린팅 프로그래밍 01 – 기본 명령어 강사: 김영준 목원대학교 겸임교수.
ASP.NET AJAX / AJAX Control Toolkit 응용 2008 컴퓨터공학실험( I )
Moving Control in Web using Ajax Toolkit
1차시: 낮과 밤이 생기는 원리 지구과학
스위시 맥스2 이미지 갤러리 만들기 아래 그림이 스위시 맥스2로 만들 이미지 갤러리 이다.
비주얼 프로그래밍 1분반 화/목.
1. 스크립트 작성 마법사 2. NSIS 스크립트 컴파일
컴퓨터 프로그래밍 기초 [01] Visual Studio 설치 및 사용방법
컴퓨터 개론 및 실습 1주차 2015년 03월 05일.
7주차 실습 FPGA 보드 사용법.
비주얼 프로그래밍(2분반) 강의노트 2분반 = 월/목.
빌드 성공.
학습목표 처음 만드는 비주얼 베이직 프로그램 프로그램 실행과 실행 파일 생성. 학습목표 처음 만드는 비주얼 베이직 프로그램 프로그램 실행과 실행 파일 생성.
OpenCV 설정 2.21 만든이 딩딩.
영상처리 실습 (OpenCV + MFC) Chonbuk National University A.I. Lab.
안드로이드 앱 개발과정 Step1. 기초과정 강사 : 정 훈 희.
StyleCop 소개 SGS Framework 개발 팀.
.Net Web Application 2007 컴퓨터공학실험(Ⅰ)
메뉴(Menu) 컴퓨터응용 및 실습 I.
기초C언어 제2주 실습 프로그래밍의 개념, 프로그램 작성 과정 컴퓨터시뮬레이션학과 2016년 봄학기 담당교수 : 이형원
시스템 인터페이스 Lab1 X-window 및 명령어 사용.
9 브라우저 객체 모델.
무선랜 사용자 설명서 (Windows Vista 사용자).
1. BlueSoleil 프로그램 설치 및 SETUP 사항
과제물 3호 3번 문제 설명자료.
Power Point 예제 디자인 적용 (서식) - (디자인적용) - (원하는 디자인 선택)
Presentation transcript:

설계및프로젝트기본I 2017년 1학기(02분반)

1주차 수업 2월 27일(월) Form Login

1주차 목차 수업소개 ACE 리더 선발 레벨테스트 노트 블로그 프로그래밍 -> 폼, WPF 시험보지 않고 프로젝트 할거다 팀구성 -> 4주 후 계획 -> 진도 -> 최종(성과전시회) 가르쳐주지 않는다 하지만 수시로 가르쳐준다 ACE 리더 선발 권예림 레벨테스트 카톡으로 하겠음 노트 블로그 프로그래밍 -> 폼, WPF

로드맵 LAB

프로그래밍 WinForm WPF GUI, Visual Program 클래스가 다르다 객체지향언어의 기본 구조 VS2015

Visual Studio 프로젝트 시작 Solution : 프로젝트의 집합 Project : 파일들의 집합 파일들… Visual C# Windows Form WPF Solution : 프로젝트의 집합 Project : 파일들의 집합 프로젝트 하나가 실행파일 하나 파일들…

윈도우 프로그램 작성 순서 디자인 속성을 변경시킨다 코딩 Form 컨트롤(Control) 배치 크기, 위치, 색깔, 내용… 이벤트 코딩 C#으로 코딩 이벤트 함수

Form 이벤트처리 button1, button2에 Click 이벤트 설정 디자인 창에서 버튼을 더블클릭하여 이벤트 함수 생성 private void button1_Click(object sender, EventArgs e) { if (textBox1.Text == "의료IT" && textBox2.Text == "1234") MessageBox.Show("성공"); else MessageBox.Show("실패"); } private void button2_Click(object sender, EventArgs e) // 끝내라 Close();

WPF 프로젝트 만들기 템플릿을 WPF로 선택하여 프로젝트 만들기 지난 시간에 Form 로그인 Solution 오른쪽 마우스 버튼 -> 추가 -> 새프로젝트 시작 프로젝트로 설정 지난 시간에 Form 로그인 WPF 로그인 프로그램을 완성시켜라

2주차 강의 3월 6일(월) WPF Login

2주차 수업내용 지난 시간에 Form 로그인 WPF 로그인 프로그램을 완성시켜라

1. 디자인하는 창의 이름이 달라졌다 *보통은 XAML 파일로 디자인한다 2. XAML 창이 생긴다

Design과 XAML(자멜이라고 읽는다)이 연동되어 있다 <Grid> <Label x:Name="label" Content="Label" HorizontalAlignment="Left" Margin="60,52,0,0" VerticalAlignment="Top“ /> <TextBox x:Name="textBox" HorizontalAlignment="Left" Height="23" Margin="157,52,0,0" TextWrapping="Wrap" Text="TextBox" VerticalAlignment="Top" Width="120"/> <TextBox x:Name="textBox2" HorizontalAlignment="Left" Height="23" Margin="157,152,0,0" TextWrapping="Wrap" Text="TextBox" VerticalAlignment="Top" Width="120"/> </Grid>

Xaml 코딩이 좋다 <Grid Background="Orange"> <TextBlock FontSize="50" FontWeight="Bold" Foreground="Blue" HorizontalAlignment="Center" VerticalAlignment="Center">HelloWorld </TextBlock> </Grid> Tag : <>로 시작하고 </>로 끝 Control을 사용할 때 <> 안에 속성을 넣는다 반드시 자동완성기능을 사용한다

MainWindow.xaml <Grid Name="grid1" Background="Orange"> <TextBlock FontSize="50" FontWeight="Bold" Foreground="Blue" HorizontalAlignment="Center" VerticalAlignment="Center" MouseDown="TextBlock_MouseDown">HelloWorld</TextBlock> </Grid> MainWindow.xaml.cs // TextBlock이 눌렸을 때의 이벤트 함수 private void TextBlock_MouseDown(object sender, MouseButtonEventArgs e) { grid1.Background = Brushes.White; }

실행모습

WPF login <Grid> <TextBlock>ID</TextBlock> <TextBox></TextBox> <TextBlock>PASSWORD</TextBlock> </Grid> Container를 써야 한다

<Grid> <Button Margin="30">Button</Button> </Grid>

StackPanel – 가로로 쌓기 <Grid> <StackPanel Orientation="Horizontal"> <Button Margin="10" Height="40" Width="150"> Button1</Button> <Button Margin="10" Height="40" Width="150"> Button2</Button> <Button Margin="10" Height="40" Width="150"> Button3</Button> </StackPanel> </Grid>

세로로 쌓기 <Grid> <StackPanel > <Button Margin="10" Height="40" Width="150"> Button1</Button> <Button Margin="10" Height="40" Width="150"> Button2</Button> <Button Margin="10" Height="40" Width="150"> Button3</Button> </StackPanel> </Grid>

프로젝트만 압축해서 학번_이름.zip bikang@konyang.ac.kr <StackPanel> <StackPanel Orientation=“Horizontal”> <TextBlock/> <TextBox /> </StackPanel> <TextBox/> <Button Name=btn1/> <Button name=btn2/> </Stackpanel> m2 속성 Margin Width Height m3 Button m1 m4 Margin=“m1, m2, m3, m4”

디자인 – MainWindow.xaml <Grid Background="Orange"> <StackPanel HorizontalAlignment="Center" VerticalAlignment="Center" > <StackPanel Orientation="Horizontal" Margin="10"> <TextBlock Width="100">ID</TextBlock> <TextBox Name="txtID" Width="150"/> </StackPanel> <TextBlock Width="100" Text="PASSWORD"/> <TextBox Name="txtPassword" Width="150"/> <StackPanel Orientation="Horizontal" HorizontalAlignment="Center" Margin="10"> <Button Width="100" Name="btnLogin" Click="btnLogin_Click">로그인</Button> <Button Width="100" Name="btnClose" Margin="50,0,0,0">종료</Button> </Grid>

Code behind – MainWindow.xaml.cs public partial class MainWindow : Window { public MainWindow() InitializeComponent(); } // Login Button 이벤트 함수 private void btnLogin_Click(object sender, RoutedEventArgs e) if (txtID.Text == "의료IT" && txtPassword.Text == "1234") MessageBox.Show("성공했습니다"); else MessageBox.Show("실패했습니다"); // Close Button 이벤트 함수 private void btnClose_Click(object sender, RoutedEventArgs e) Close(); // XAML 코드에서 패스워드 입력창에 // TextBox 대신 PasswordBox 사용하면 글자를 숨겨준다 <StackPanel Orientation="Horizontal" Margin="10"> <TextBlock Width="100" Text="PASSWORD"/> <PasswordBox Name="txtPassword" Width="150"/> </StackPanel> cs 파일 // Login Button 이벤트 함수 private void btnLogin_Click(object sender, RoutedEventArgs e) { if (txtID.Text == "의료IT" && txtPassword.Password == "1234") MessageBox.Show("성공했습니다"); else MessageBox.Show("실패했습니다"); }

3주차 강의 3월 13일(월) WPF 계산기

간단한 계산기 Form WPF Title TextBox Button

WPF 계산기

WPF StackPanel Grid

XAML을 이용하여 Button 표시 <Grid> <Button>버튼1</Button> </Grid> <Grid>와 </Grid>사이에 콘트롤 배치 <Grid> <Button>버튼1</Button> <Button>버튼2</Button> </Grid> <Button>을 두 개 넣어도 표시는 하나만 됨 즉, 같은 위치에 2개가 들어감 쌓아놓는 패널이라는 뜻 이럴 때 <StackPanel> 을 사용함 <StackPanel> <Button>버튼1</Button> <Button>버튼2</Button> </StackPanel>

Button의 속성 = Height, Margin <StackPanel> <Button Height=“100”>버튼1</Button> <Button Height=“150”>버튼2</Button> </StackPanel> Button의 크기를 키우려면 Height 속성을 준다 Button이 너무 붙어있어서 여백을 주고 싶으면 Margin 속성을 준다. 40 10 50 버튼1 20 Margin=“10” 과 같이 숫자 하나만 쓰면 사방이 같은 Margin을 갖는다. 네 방향 모두 다른 값을 줄 수 있다. Margin=“50,40,10,20” 처럼… <Button Height="100" Margin="10">버튼1</Button> <Button Height="150" Margin="10">버튼2</Button>

수업 중에 한 프로그램 XAML 구조 -> 올려놓은 소스를 보면서 공부할 것 <StackPanel> <Grid> <TextBox Name=“txtResult”>0</TextBox> </Grid> <Grid.RowDefinitions> <RowDefinition/> … </Grid.RowDefinitions> <Grid.ColumnDefinitions> <ColumnDefinition/> </Grid.ColumnDefinitions> <Button Grid.Row=“0” Grid.Column=“0”>MC</Button> … 여러 개의 버튼들을 이곳에… </StackPanel> 첫번째 Grid 6줄을 정의함 두번째 Grid 5칸을 정의함 두번째 <Grid>와 </Grid> 사이에 버튼이 놓이고 버튼은 몇번째 Row, Column 에 들어가는 지를 표시한다.

윈도우 계산기와 비교 - 초기화면 ③ 프로그램 아이콘 ① 프로그램의 이름 ④ 메뉴 ② TextBox의 숫자가 오른쪽 아래 큰 글씨로… ⑤ 컬러추가 ① XAML 맨 윗줄에서 Title 속성 변경… <Window x:Class="wpfCalc.MainWindow" ….. Title="WPF 계산기" Height="320" Width="220"> ② 첫번째 <Grid>의 속성 변경… <TextBox Name="txtResult" Height="55" Margin="10" FontSize="20" FontWeight="Bold" HorizontalContentAlignment="Right" VerticalContentAlignment="Bottom">0</TextBox> </Grid>

③ 프로그램 아이콘 바뀐 아이콘 확인! 이 아이콘은 실행파일의 아이콘이 된다 iconfinder.com 에서 Calculator로 검색하여 그 중에 마음에 드는 아이콘을 찾아 다운로드 받는다. 솔루션탐색기에서 프로젝트 이름 위에 오른쪽 마우스버튼을 누르고, 맨 아래 “속성” 메뉴를 선택 “아이콘 및 매니페스트”에서 아이콘에 다운 받아둔 그림 선택 또는 <Window x:Class="wpfCalc.MainWindow" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" Title="WPF 계산기" Height="340" Width="235" Background="#FFDDE7E3" Icon="calculator.ico">

④ Menu in WPF http://www.wpf-tutorial.com/common-interface-controls/menu-control/ <Menu> <MenuItem Header="_보기(V)"> <MenuItem Header="일반용" /> <MenuItem Header="공학용" IsEnabled="False" /> <MenuItem Header="프로그래머용" IsEnabled="False" /> <MenuItem Header="통계용" IsEnabled="False"/> <Separator/> <MenuItem Header="끝내기" Click="Exit_Click"/> </MenuItem> <MenuItem Header="편집(E)"> <MenuItem Header="복사(C)"/> <MenuItem Header="붙여넣기(P)" /> <Separator /> <MenuItem Header="기록" > <MenuItem Header="기록복사"/> <MenuItem Header="기록 지우기"/> <MenuItem Header="도움말(H)"> <MenuItem Header="WPF계산기 정보" Click="About_Click" /> <MenuItem Header="_Version 정보" Click="Version_Click" /> </Menu>

⑤ Color <Window x:Class="wpfCalc.MainWindow" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" Title="WPF Calc v.1.10" Height="340" Width="235" Background="#FFDDE7E3“> <TextBox Name="txtResult" Height="55" Margin="10" FontSize="20" FontWeight="Normal" HorizontalContentAlignment="Right" VerticalContentAlignment="Bottom" BorderBrush="#FF93A5B1" Foreground="Black">0 <TextBox.Background> <LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0"> <GradientStop Color="#FFD2DEE8" Offset="0.152"/> <GradientStop Color="#FFE6F5F7" Offset="0.561"/> </LinearGradientBrush> </TextBox.Background> </TextBox>

⑥ Clipboard Class http://msdn.microsoft.com/ko-kr/library/system.windows.clipboard(v=vs.110).aspx http://tech.pro/tutorial/850/wpf-tutorial-using-the-clipboard System.Object    -> System.Windows.Clipboard Clipboard.SetText() Method Clipboard.GetText() Method // 메뉴: 편집->복사 private void Copy_Click(object sender, RoutedEventArgs e) { Clipboard.SetText(txtResult.Text, TextDataFormat.Text); } // 메뉴: 편집->붙여넣기 private void Paste_Click(object sender, RoutedEventArgs e) txtResult.Text = Clipboard.GetText();

⑦ No Resize <Window x:Class="wpfCalc.MainWindow" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" Title="WPF Calc v.1.10" Height="340" Width="235" Background="#FFDDE7E3" Icon="calculator.ico" ResizeMode="NoResize">

3월 13일 수업중 코딩

XAML 코딩 <Window x:Class="_005_WPFCalc.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:_005_WPFCalc“ mc:Ignorable="d" Title="MainWindow" Height="350" Width="250"> <StackPanel> <Grid> <TextBox Name="txtResult“ HorizontalContentAlignment="Right" VerticalContentAlignment="Bottom" Height="55" Margin="10" FontSize="26">0 <TextBox.Background> <LinearGradientBrush EndPoint="0.5,1" MappingMode="RelativeToBoundingBox" StartPoint="0.5,0"> <GradientStop Color="#FFBBE4F3" Offset="0"/> <GradientStop Color="#FFF7FAFB" Offset="1"/> </LinearGradientBrush> </TextBox.Background> </TextBox> </Grid> <Grid Margin="5,0,10,0"> <Grid.RowDefinitions> <RowDefinition></RowDefinition> <RowDefinition/> </Grid.RowDefinitions> <Grid.ColumnDefinitions> <ColumnDefinition/> </Grid.ColumnDefinitions> <!--여기서부터 버튼을 위치시킴(^K-C)--> <Button Height="30" Margin="5,0,0,5" Grid.Row="0" Grid.Column="0">MC</Button> <Button Margin="5,0,0,5" Grid.Row="0" Grid.Column="1">MR</Button> <Button Margin="5,0,0,5" Grid.Row="0" Grid.Column="2">MS</Button> <Button Margin="5,0,0,5" Grid.Row="0" Grid.Column="3">M+</Button> <Button Margin="5,0,0,5" Grid.Row="0" Grid.Column="4">M-</Button> <!-- 두번째 Row --> <Button Height="30" Margin="5,0,0,5" Grid.Row="1" Grid.Column="0">←</Button> <Button Margin="5,0,0,5" Grid.Row="1" Grid.Column="1">CE</Button> <Button Name="btnC" Margin="5,0,0,5" Grid.Row="1" Grid.Column="2" Click="btnC_Click">C</Button> <Button Name="btnPlusMinus" Margin="5,0,0,5" Grid.Row="1" Grid.Column="3">±</Button> <Button Margin="5,0,0,5" Grid.Row="1" Grid.Column="4" Click="Button_Click_3">√</Button> <!-- 세번째 Row --> <Button Height="30" Margin="5,0,0,5" Grid.Row="2" Grid.Column="0">7</Button> <Button Margin="5,0,0,5" Grid.Row="2" Grid.Column="1">8</Button> <Button Margin="5,0,0,5" Grid.Row="2" Grid.Column="2">9</Button> <Button Margin="5,0,0,5" Grid.Row="2" Grid.Column="3">/</Button> <Button Margin="5,0,0,5" Grid.Row="2" Grid.Column="4">%</Button> <!-- 네번째 Row --> <Button Height="30" Margin="5,0,0,5" Grid.Row="3" Grid.Column="0">4</Button> <Button Margin="5,0,0,5" Grid.Row="3" Grid.Column="1">5</Button> <Button Margin="5,0,0,5" Grid.Row="3" Grid.Column="2">6</Button> <Button Margin="5,0,0,5" Grid.Row="3" Grid.Column="3">*</Button> <Button Margin="5,0,0,5" Grid.Row="3" Grid.Column="4">1/x</Button> <!-- 다섯번째 Row --> <Button Height="30" Margin="5,0,0,5" Grid.Row="4" Grid.Column="0" Click="Button_Click">1</Button> <Button Margin="5,0,0,5" Grid.Row="4" Grid.Column="1" Click="Button_Click_1">2</Button> <Button Margin="5,0,0,5" Grid.Row="4" Grid.Column="2" Click="Button_Click_2">3</Button> <Button Margin="5,0,0,5" Grid.Row="4" Grid.Column="3">-</Button> <Button Margin="5,0,0,5" Grid.Row="4" Grid.Column="4“ Grid.RowSpan="2">=</Button> <!-- 여섯번째 Row --> <Button Height="30" Margin="5,0,0,5" Grid.Row="5" Grid.Column="0“ Grid.ColumnSpan="2">0</Button> <Button Margin="5,0,0,5" Grid.Row="5" Grid.Column="2">.</Button> <Button Margin="5,0,0,5" Grid.Row="5" Grid.Column="3">+</Button> <TextBlock HorizontalAlignment="Center">CopyRight 2017 Byungik Kang </TextBlock> </StackPanel> </Window>

소스 코드 namespace _005_WPFCalc { /// <summary> /// MainWindow.xaml에 대한 상호 작용 논리 /// </summary> public partial class MainWindow : Window public MainWindow() InitializeComponent(); } // 1버튼이 클릭되면 private void Button_Click(object sender, RoutedEventArgs e) if (txtResult.Text == "0") txtResult.Text = "1"; else txtResult.Text += "1"; // 2번버튼 private void Button_Click_1(object sender, RoutedEventArgs e) txtResult.Text = "2"; txtResult.Text += "2"; // 3번 버튼 private void Button_Click_2(object sender, RoutedEventArgs e) txtResult.Text = "3"; txtResult.Text += "3"; // 제곱근(sqrt) private void Button_Click_3(object sender, RoutedEventArgs e) double num = double.Parse(txtResult.Text); txtResult.Text = Math.Sqrt(num).ToString(); // C 버튼 이벤트 private void btnC_Click(object sender, RoutedEventArgs e) txtResult.Text = "0";

집에 가서 오늘은 복습 Button에 Name 속성을 만들 것 WPF 계산기 작성 <Grid> <Grid.RowDefinitions> <RowDefinition/> 복습 Button에 Name 속성을 만들 것 YouTube 동영상 참조하여 자신의 계산기 만들 것 (블로그에 정리) 다음 주에는 조편성 3인 1조

4주차 수업 3월 20일(월) 조편성 WPF 계산기 완성