C# WPF/05 MVVM
12. Command - CanExecute
12. Command - CanExecute
2025.03.281. View (1단계) 더보기 Title="ICommand Example" Height="100" Width="300"> 2. ViewModel (1단계)더보기public class MainViewModel{ // // 사용자로부터 입력받은 텍스트를 저장하는 프로퍼티입니다. // private string _inputText; public string InputText { get => _inputText; ..
11. Command
11. Command
2025.03.2801. 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의 동..
10. DataContext
10. DataContext
2025.03.271. DataContext 사전 학습 더보기1) DataBinding, 2) SOLID 를 학습했다는 가정하에 진행합니다. 2. DataContext 실습 예제더보기이전 DataBinding 예제를 사용합니다. 3. OOP 구조더보기1. 목적 가장 먼저, OOP(객체 지향 프로그래밍 언어)의 객체간 구조에 대해 이해하고 진행합니다. 2. 모든 프로그램의 시작점 C# WPF Main( ) 함수는 어디에 있을까요?모든 프로그램의 시작은, Main( ) 함수입니다. 3. OOP란? >> 프로그램을 단순히 데이터와 처리 방법으로 나누는 것이 아니라, 프로그램을 수많은 '객체(object)'라는 기본 단위로 나누고 이들의 상호 작용으로 서술하는 방식이다. *객체(object)는 Class 라는 자..
4. Data Binding 예제
4. Data Binding 예제
2025.03.221. 예제 파일 준비더보기이전 포스트에서 작업했다면, 아래 파일은 필요 없습니다.2. Two Way 더보기1. 개념 1. Two Way 데이터 바인딩이란?[ C# 소스코드→ XAML UI ], [ XAML UI → C# 소스코드 ] 양방향으로 할당(수정) 가능한 설정이다. 2. Data Binding. 데이터 바인딩.>> Data를 UI와 묶는다.>> Data(원본), UI(복사본, 원본에 종속된 상태)>> 원본을 변경하면, 복사본이 변경된다.>> 복사본을 변경하면, 원본이 변경된다. 2. Two Way 데이터 바인딩 구현 3. Two Way (C# 소스코드에서 UI로, UI에서 C# 소스코드)로 데이터 바인딩 3. One Way더보기1. 개념 1. One Way 데이터 바인딩이란?데이터의 ..
3. Data Binding 개요
3. Data Binding 개요
2025.03.221. 목표더보기1.- 우선 MVVM 패턴을 고려하지 않고, DataBinding 개념과 사용법 자체에 집중하고, 이후 추가적인 개념으로 확장합니다.- DataBinding 에서 TwoWay, OneWay 개념을 먼저 이해합니다. 2. 참고1Data Binding C# 소스코드 → XAML UI(원본 → 복사본) XAML UI → C# 소스코드(복사본 → 원본)TwoWayOOOneWayOXOneWayToSourceXOOneTimeO X 3. 참고2 2. UI 준비더보기1. 기본 XAML UI 틀을 가진 프로젝트를 다운받아 실행합니다. 2. 새 WPF 프로젝트에서 "아래 XAML 소스"를 사용하셔도 됩니다. Title="Data Binding" Height="150" Width="265"..
2. Data Binding - Model
2. Data Binding - Model
2025.03.221. Data, Class, Model더보기1. 프로그래밍 그리고, 언제나 하는 말이지만, 프로그램은 '데이터'와 '로직' 단, 2가지만 존재합니다.이 중, 데이터는 자료형이라는 기준으로 관리됩니다. 2. 자료형 자료형을 사용하는 이유와 원리는 생략하고, 자료형의 종류에 대해 살펴봅니다. 1. 기본 자료형2. 복합 자료형3. 사용자 정의 자료형 (Enum, Struct, Class, Model) 3. 사용자 정의 자료형 기본 자료형은, 데이터 하나를 다룹니다.복합 자료형은, 데이터 여러 개를 다룹니다.사용자 정의 자료형은, 사용자가 원하는 여러 종류의 자료형 여러 개를 조합해 다룹니다. 4. 용어 객체지향 프로그래밍 언어에서, 사용자 정의 자료형을 Class 라고 합니다.Class는 기본..
1. Data Binding - 데이터와 추상화 개요
1. Data Binding - 데이터와 추상화 개요
2025.03.211. "데이터"를 이해해야 하는 이유더보기1. 용어 기술을 배울때 가장 먼저 해야 하는 것은기술 용어의 단어 하나하나의 의미를영어사전, 한자사전에서사전적 정의와 의미를 살펴보아야합니다. DataBinding(데이터 바인딩)은, 용어 그대로 Data를 Binding하는 기술입니다. 그렇기에, 프로그래밍에서 Data 라는 것을 이해하고 있다면, DataBinding은 어렵지 않은 기술입니다.반대로, 프로그래밍에서의 Data를 설명할 수 없다면, Data Binding도 이해하지 못합니다. 2. 목표 1)프로그래밍과, 2)추상화, 3)데이터에 대해 이해합니다.데이터와 4)자료형, 5)프로퍼티, 6)모델로 지칭되는 용어와 관계를 이해합니다. 2. "추상화"를 이해해야 하는 이유더보기1. 용어 WPF, IOS,..
Thread, Dispatcher
Thread, Dispatcher
2024.11.2501. 목표더보기01.1 전제조건C언어를 웠고,컴퓨터의 실행 구조와 메모리와 포인터의 사용법과 사용 이유,그리고 스택과 같은 메모리 모델의 특성(스택 실행 순서와 함수 프레임의 FIFO)의 이해가 있다고 가정합니다. 01.2 용어thread, 실행 순서 흐름을 한가닥의 실로 생각합니다.쓰레드의 어원은 아직 명확하게 밝혀지지 않았습니다. 01.3 WPF 스레드 모델UI Thread, 그리고 BackgroundWorker와 Dispatcher 이해 02. 메모리와 데이터더보기02.1 함수의 실행흐름 02.2 메모리 모델와 함수 실행 구조 (1)함수는 하나의 순차적인 실행 순서(스레드)를가진다. 02.3 메모리 모델와 함수 실행 구조 (2)C언어에서는, 하나의 함수에서 다른 함수 내부 데이터(..
UserControl - 화면 전환
UserControl - 화면 전환
2024.11.2201. 목표더보기WPF 화면 전환에는 Page, Window, TabControl, UserControl 방법이 있습니다. 일반적인 사용 방법을 예로 들면1) Page 는 URI로 이동할때 2) Window 는 창 위에 새 창을 띄울 때 3) TabControl 은, 탭을 사용할 때 4) UserControl 은, 화면의 일부를 구성하고 변경을 할 때 사용합니다. 이번 포스트에서는, UserControl 을 사용해 로그인 후, 다음 화면으로 전환되도록 구현합니다. 02. LoginView 만들고 MainWindow 적용하기더보기02.1 MainWindow.xaml 세팅 ① 프로젝트를 생성하면, 최초 MainWindow 창이 생성됩니다. ② 높이와 너비를 설정하고, Title="UserControl" H..