All Pages
16. Command
16. Command
2024.11.2701. Command 이론더보기01.1 ICommand 사용 방법 (1) ViewModel 에 ICommand 구현체를 만들고, 원하는 '메서드'를 등록합니다.MyCommand cmd = new MyCommand(메서드);(2) View에 ICommand 구현체인 cmd를 바인딩 합니다. 01.2 ICommand- 목적: XAML 코드 비하인드가 아닌, 별도의 ViewModel 클래스에서 로직 함수를 구현합니다.- 방법: ICommand 인터페이스의 Execute( ) 함수의 구현부에, 이벤트 핸들러 로직을 구현해 대신 사용할 수 있습니다. 01.3 ICommandICommand는 WPF 컨트롤의 Command 속성에 Binding 하기 위해 사용합니다.위순서도는 ICommand의 동작방식..
15. WeatherApp - MVVM(1)
15. WeatherApp - MVVM(1)
2024.11.2701.더보기01. MVVM 패턴의 전제 조건[유형1] View 컨트롤의 변경 >> ViewModel 의 프로퍼티 변경 >> View 컨트롤 반영 [유형2] API, TCP, DB >> ViewModel 의 프로퍼티 변경 >> View 컨트롤 반영 두 유형 모두, ViewModel의 프로퍼티 변경되는 시점을 기준으로 View 컨트롤에 반영된다. ViewModel의 프로퍼티 변경을 알려주고, 이때 동작하는 기술을 배우는 것이 MVVM 패턴을 구현하는 핵심이다. 01.2 Data Binding OneWay: ViewModel > View TwoWay: ViewModel > View View > ViewModel ..
14. WeatherApp - View
14. WeatherApp - View
2024.11.2701.더보기01.1 02.더보기02.1 View 폴더 생성 02.2 기본 생성된 Mainwindow 제거 02.3 WeatherWindow 생성 02.4 WeatherWindow XAML 구현 Title="WeatherWindow" Height="600" Width="400"> ..
13. WeatherApp - ViewModel
13. WeatherApp - ViewModel
2024.11.2701.더보기01.1 프로그램은, 데이터와 로직으로 이루어집니다. C언어에서 단수 자료형과, 간단한 로직으로 프로그램을 만들었습니다.Model은 자료형입니다. ViewModel은 로직입니다. 복잡한 로직, 프로그램 외부와 데이터(DB, TCP/IP, Serial 등)를 주고받는 로직 모두 ViewModel에서 처리됩니다. 02. ViewModel 폴더 생성더보기학습 과정에서 ViewModel을 확실하게 구분하기 위해 ViewModel 폴더를 만듭니다.ViewModel 폴더와 ViewModel.Helpers 폴더를 만듭니다. 03. ViewModel.Helpers 더보기ViewModel.Helpers 폴더의 AccuWeatherHelpers.cs 에서는, 외부 API 데이터를 Request 하거나, DB..
12. WeatherApp - Model
12. WeatherApp - Model
2024.11.2701.더보기01.1 MVVC 패턴은 Model, View, ViewModel 로 소스코드의 역할을 구분해 정한 것 뿐입니다. 언제나 하는 이야기지만, 프로그램은 '데이터'와 '로직' 단 두가지만으로 이루어집니다.기본 자료형 → 복합 자료형 → 사용자 정의 자료형(구조체) → 클래스(구조체 + 함수) > → Model 01.2 좀 더 단순하게 생각합시다.프로그램은, 데이터와 로직으로 이루어집니다. Model은 자료형입니다. ViewModel은 로직입니다.C언어에서, 기본적인 자료형과 로직만으로 프로그램을 구했엇습니다.Model과 ViewModel 만으로 프로그램을 구현하고, 콘솔에 출력하면 C언어 프로그래밍과 동일한 구현 과정이 됩니다. 다른점은, 콘솔 대신 View라는 UI로 ViewModel의 로직..
11. WeatherApp - API
11. WeatherApp - API
2024.11.2701. AccuWeather 회원가입더보기01.1 AccuWeather API 사이트로 이동합니다. AccuWeather APIs | home AccuWeather APIs | homeExclusions, Conditions and Restrictions of License. Specifically excluded from the License grant relating to the APIs and the API Data are any television type uses such as electronic publishing, database transmissions, side band transmissions, cable castindeveloper.accuweather.com 01.2 Accu..
01. Data Binding
01. Data Binding
2024.11.2701. 목표더보기 02. 준비더보기02.1 UI 준비기본 UI 틀을 가진 프로젝트를 준비합니다.위 압축 파일을 다운받아 실행하거나, 새 프로젝트에서 아래 XAML 코드를 사용하세요. Title="Data Binding" Height="150" Width="265" > 02.2 Binding 테스트 데이터 준비(1) 02.3 Binding 테스트 데이터 준비(2) Person person = new Person { Age = 20, name = "Richard"}; 0..
17. 윈도우 계산기 - 스타일
17. 윈도우 계산기 - 스타일
2024.11.2601. 목표 더보기01.1 명시적, 묵시적 적용 이해 묵시적(Implicit) - '내포된', 설정하지 않아도, 자동으로 포함되거나 적용된 상태로, "전체 적용" 할 부분에 사용된다.명시적(Explicit) - '명시된', 명시적으로 적어놓은 부분만 적용되는 것으로, "일부 적용"할 때 사용한다. 02. 명시적 예시더보기 02.1 이전 예제에서 적용한 Application.resource 를 주석 처리하고 xaml 에 적용한 background 속성에 정의된 정적 리소스 설정을 제거한다. 02.2Background="{StaticResource operationButtonColor}"Background="{StaticResource numberButtonColor}"검색어 찾아 바꾸기로 제거 03..
16. 윈도우 계산기 - 리소스
16. 윈도우 계산기 - 리소스
2024.11.2601. 목표더보기01.1 윈도우 계산기와, 진행중인 예제의 디자인 비교 01.2 색상코드@웹 확장 프로그램 ColorPick Eyedropper 사용하면 색상을 쉽게 확인할 수 있습니다. 배경색#FFF6F3ED기호 버튼 색#FFFAF9F7숫자 버튼 색White 02. (공통) 버튼 색 변경 방법 확인더보기02.1 등호 기호 배경색 변경❶ 윈도우 계산기의 등호 아이콘은 배경색이 푸른색이다.❷ 버튼 속성의 Brush 탭에서, Backgroud 속성의 ❸ 다섯번째 탭을 선택하면, 기존에 세팅된 색이 보인다.❹ MenuHighlightBrushKey 색을 고르고 저장하면, 자동으로 XAML에 반영된다. 02.2 등호 기호 글자색 변경❶ 윈도우 계산기의 등호 아이콘은 글자색이 하얀색이다.❷ 버튼 속성의 Brush..
15. 윈도우 계산기 - 오류 개선
15. 윈도우 계산기 - 오류 개선
2024.11.2601. 목표더보기0으로 나누는 경우, 개선0을 음수를 만들고 진행하는 경우 , 개선%(퍼센트) 버튼 적용하는 경우 , 개선 02. 0으로 나누는 경우더보기02.1 02.2if (n2 == 0){ MessageBox.Show("Division by 0 is not supported","Wrong operation", MessageBoxButton.OK, MessageBoxImage.Error); return 0;}else return n1 / n2; 02.3 03. 0을 음수를 만들고 진행하는 경우더보기0은 음수가 없습니다.해결해보세요. 04. %(퍼센트) 버튼더보기04.1 04.2 05. 실행 결과 확인 더보기
14. 윈도우 계산기 - 사칙연산 구현
14. 윈도우 계산기 - 사칙연산 구현
2024.11.2601. 목표더보기01.1 사칙연산, +, -, *, / 구현 01.2 사칙연산 구조 분석필요한 데이터첫번째 입력 피연산자, 연산자 기호 종류, 두번째 입력 피연산자, 피연산자 2개의 계산 결과 02.더보기02.1사칙연산 버튼을 눌렀을 때 동작할, OperationButton_Click 이벤트 핸들러를 구현합니다. private void operationButton_Click(object sender, RoutedEventArgs e) { } 02.2사칙연산 버튼에, OperationButton_Click 이벤트 핸들러를 등록합니다.operationBtn = [plusButton, minusButton, devideButton, multiplicationButton]..
13. 윈도우 계산기 - 기타 버튼 구현
13. 윈도우 계산기 - 기타 버튼 구현
2024.11.2601. 목표더보기 CE(초기화), %(백분율), ⌦(삭제),-(음수) 버튼을 구현합니다. C(Clear)의 의미는 입력된 모든 값과 계산 전체 삭제입니다.CE(Clear Entry)의 의미는 마지막 입력 값의 전체 삭제입니다.⌦의 의미는 마지막 입력 값 중 마지막 입력 1개 부분 삭제입니다. 02. CE 버튼 구현더보기02.1 02.2 resultLabel.Content = "0"; 02.3 실행하여, 동작을 확인합니다. 03. % 버튼 구현 더보기03.1 03.2 double lastNumber; private void percentButton_Click(object sender, RoutedEventArgs e) { ..