[WPF] TCP Server, Client 만들기
이번 글에서는 TCP 통신으로 Server와 Client를 만들어 보겠습니다. 전체적인 코드는 github을 참고해주시기 바랍니다. 주요 클래스, 함수 우선 서버 쪽 필수 클래스는 TcpListener입니다. TcpListener의 핵심 코드들은 아래와 같습니다. 클라이언트 쪽 클래스는 …
이번 글에서는 TCP 통신으로 Server와 Client를 만들어 보겠습니다. 전체적인 코드는 github을 참고해주시기 바랍니다. 주요 클래스, 함수 우선 서버 쪽 필수 클래스는 TcpListener입니다. TcpListener의 핵심 코드들은 아래와 같습니다. 클라이언트 쪽 클래스는 …
이번 글에서는 Named Pipe에 대해 알아보겠습니다. Named Pipe는 로컬 PC에서 서로 다른 프로그램끼리 데이터를 주고받는 IPC(Inter-Process Communication) 기술 중 하나 입니다. 프로그램 끼리 파이프에 이름을 붙여 통신을 한다고 보시면 됩니다. …
이번 글에서는 UDP 통신에 대해 알아보겠습니다. UDP에 대한 설명은 기존 글에도 많으니 설명보단, 만드는법 위주로 알아보겠습니다. C#으로 UDP 통신 하는 방법은 굉장히 간단합니다. UdpClient 클래스를 사용하면 됩니다. UdpClient UdpClient는 C#에서 …
이번 글에서는 local PC에 Database 파일을 만들고 데이터 저장, 화면 표시를 해보겠습니다. 데이터베이스는 Sqlite를 사용하도록 하겠습니다. 보통 DB 데이터를 select하거나 insert 하려면 SQL문법을 사용하는데, C#에서는 EF Core(Entity Framework Core)라는 ORM(Object-Relational …
이번 글에서는 DataTemplate와 DataTemplateSelector에 대해 알아보겠습니다. DataTemplate는 말 그대로 데이터를 보여주는 틀이라고 보시면 됩니다. WPF에 이 데이터는 화면에 어떻게 그리는지 알려주는 설계도와 같습니다. DataTemplate를 사용하면 ListBox에 텍스트로 표시되는 것을 정해진 …
이번 글에서는 WPF에서 RadioButton에 대해 알아보겠습니다. RadioButton는 IValueConverter에 대한 코드도 들어있으니 해당 글을 먼저 보시는 것을 추천 드립니다. RadioButton 만들어보기 우선 아래와 같이 3개의 과일을 표시하는 RadioButton을 만들어 줍니다. TextBlock은 …
이번 글에서는 WeakReferenceMessenger에 대해 알아보겠습니다. WeakReferenceMessenger는 Community Tookit.Mvvm 라이브러리에서 제공하는 메시지 패턴의 구현체입니다. 말 그대로 메시지를 전달하는 역할을 합니다. WeakReferenceMessenger에는 Sender(보내는 사람)와 Recipient(받는 사람)이 있는 발행/구독 패턴이며, 문자 그대로 약한 …
이번 글에서는 C#을 이용하여 dll을 만들고 WPF 프로그램에서 사용해보도록 하겠습니다. dll이 무엇인지는 쉽게 나오니 바로 만들어 보도록 하겠습니다. C#을 사용하여 dll을 만들 땐 클래스 라이브러리 프로젝트를 선택하면 됩니다. 라이브러리 이름은 …
이번 글에서는 WPF에서 애니메이션에 대해서 알아보겠습니다. WPF에서는 모든 컨트롤을 애니메이션 지원을 해줍니다. 움직이거나, 회전하거나, 크기가 변경되는 등등 애니메이션처럼 표현해줍니다. 애니메이션을 만들 땐 몇 가지 핵심적인 설정 값이 있습니다. Behavior를 사용해서 …
Base64는 이진 데이터를 64개의 출력 가능한 ASCII 문자로 인코딩 하는 방식입니다. 여기서 64는 64진법이란 뜻입니다. Base64를 사용하게 되면 길이가 약 33퍼정도 더 늘어나는데 그럼에도 불구하고 사용하는 이유는 바이너리 데이터를 안전하게 …