C#(5)
-
ToList에 대한 오해
ToList 라는 메서드는 보통 IEnumerble를 리스트로 변환할 때 사용한다. 보통 yield return을 사용하기 위해서 IEnumerable을 강제적으로 사용하는 수 밖에 없었다. yield return을 사용하면 코드의 병목 현상을 줄일 수 있지만 언뜻 보기에 List 를 다시 만들어야 하니 비효율적으로 보일 수 밖에 없다. 하지만 그닥 비효율적이지는 않다. 왜냐하면 ToList는 모든 요소에 접근하여 그것을 추가하는 형식으로 구현되는 것이 아니라 단지 IEnumerable가 새로 만들어진 List를 참조하도록 한다. 그러므로 yield return에서 부가적으로 따라오는 IEnumerble에서의 ToList를 사용함에 거리낌이 없어야 한다.
2022.06.16 -
C# SQLite 사용 - 테이블 생성
c#에서 데이터를 저장하는데에는 여러 방법이있다. WPF에서는 XML Serializer를 이용하여 데이터를 양식에 맞춰 저장할 수 있고, 그 밖의 것들에서는 Binary Serializer, MySql 를 이용하여 데이터를 저장할 수 있다. 하지만 위의 것들은 직접 Class에 관여하여 구조를 촘촘하게 짜거나, 사전 설정이 귀찮을떄가 있다. 그래서 SQLite라는(mysql과 비슷하다) 간단한 SQL을 사용한다. 이것은 파일 하나에 의존하여 작동하는데, NuGet에서 다운로드하고 바로 사용하면 된다. 매우 간단하다. 0. 다운로드 NuGet 패키지 관리에서 설치하면 사용할 수 있게 된다. 1. 파일 생성 SQLiteConnection.CreateFile("mydb.db"); 파일의 확장자명은 아무렇게 ..
2021.02.22 -
[WPF] Designer 뷰에서와, 디버깅에서의 Height, Width 차이 해결하기
Designer 뷰에서와, 디버깅에서의 Height, Width 차이 해결하기 코딩을 하다 보면 가끔씩 디버깅했을때 프로그램의 크기가 디자인 뷰와 다르게 나타나 곤혹을 치를때가 많다. 이럴때 쉽고 간편하게 해결하는 방법이 있다. 만약, 그 프로그램이 크기에 관해서 정적이라면 안성맞춤인 해결법이다. 윈도우 xaml 코드를 잠깐 살펴보자. Window 태그의 Height, Width 프로퍼티를 설정했는데도 불구하고 예상과 다르게 움직인다. 이럴때, MinHeight와, MinWidth를 Height와 Width에 설정해놓았던 값과 동일 혹은, 원하는 값으로 설정하면 빌드하고 실행시, 예상대로 원하는 높이와 너비를 얻을 수 있다. MinWidth="500" MinHeight="700" 위 코드는 예시로 든 것..
2020.11.22 -
How to implement a Color Picker by C# in WPF
Index 1. Implement a Spectrum 2. Picking a color by mouse click In this post, We are going to make a 'Color Picker' with UserControl in WPF. 0. Inital Codes As you know, In Wpf, there is something very useful control that's LinearGradientBrush and it means that we just only to make a spectrum for picking color. Let's move on next, to implement a spectrum in code. Code above works like a spectrum..
2020.06.28 -
[C#] 1. Visual Studio 2019 설치하고 Hello World 찍기
[C#] 1. Visual Studio 2019 설치하고 Hello World 찍기 1. Visual Studio 2019 설치 Microsoft의 IDE , Visual Studio를 설치하러 비주얼스튜디오 홈페이지로 간다. https://visualstudio.microsoft.com/ Visual Studio IDE, Code Editor, Azure DevOps, & App Center - Visual Studio Visual Studio dev tools & services make app development easy for any platform & language. Try our Mac & Windows code editor, IDE, or Azure DevOps for free. visu..
2019.09.15