c#
-
C# DateTime ToString Format (오전/오후 표시)C# 2018. 6. 26. 13:35
※ 블로그를 이전하며 해당 내용을 개선하여 포스팅했습니다. (링크) C#에서 DataTime은 날짜, 시간을 나타낼 때 쓰입니다. 그런데 DateTime을 그냥 ToString() 할 경우 2018-12-18 오후 4:53:02 이런 식으로 연월일 등 모두 표시 됩니다. 이때 필요한 것이 Format 문자열인데요, ToString() 함수에 Format 문자열을 넣어주는 방식으로 설정할 수 있습니다. Format 문자열은 yy MM dd 이런 알파벳 들로 이루어집니다. 자주 쓰이는 것들을 알려드리고, 그 외 여러 Format과 예시들은 MS Docs에 있습니다. y 년 Year M 월 Month d 일 Day H 시간 Hour (24시간 기준) h 시간 hour (12시간 기준) m 분 minute s ..
-
C# Enum 형식 array형으로 변환하기 (for문, foreach문 사용)C# 2018. 6. 20. 11:30
C#에서 Enum 으로 선언한 열거형의 각 요소들의 이름이 필요할 때가 있습니다. 예를 들어 enum 계이름{도, 레, 미, 파, 솔, 라, 시} 가 있다면 List, 혹은 ComboBox 등에 도,레,미 ... 를 Item으로 넣어주고 싶을 때 입니다. 이 때 각각 요소들을 Item으로 갖는 Array를 만들어주는 방법이 있습니다. 1Array arr = Enum.GetValues(typeof(계이름));cs Enum의 GetValues 를 사용하는 것입니다. 이 Array는 일반 Array형과는 달라서 []로 접근할 수 없습니다. 사용법입니다. 1arr.GetValue(index);cs 다음과 같이 GetValue를 이용해야 하며, 반환 값은 object 입니다. 혹시 값을 바꾸어야 한다면 arr.S..
-
WPF System Menu 불러오기C#/WPF 2018. 4. 26. 11:30
윈도우의 상단 Title Bar를 우클릭 하면 아래와 같은 시스템 메뉴가 나오게 됩니다. 시스템 메뉴를 굳이 위 상단 Title Bar 클릭이 아닌 다른 이유로 불러야 할 때가 있습니다. (Custom Title Bar 등...) WPF 특정 Control을 우클릭 했을 떄 시스템 메뉴를 여는 법에 대해 써보겠습니다. 우선 MouseDown Event Handler가 필요합니다. 저는 Label을 눌렀을 때 뜨도록 하겠습니다. 1cs PreviewMouseDown 과 MouseDown의 차이는 없습니다. 그리고 DLL파일을 Import하야 하기 때문에 using을 씁니다. using System.Runtime.InteropServices; 다음 내용이 필요합니다. 1234567[DllImport("use..
-
C#에서 엑셀파일 저장(쓰기)C# 2018. 3. 30. 11:30
※ 블로그를 이전하며 해당 내용을 개선하여 새로 포스팅했습니다. (링크) C#에서 엑셀 파일을 읽어오는 법에 대해 글을 썼었습니다. ([C#] - C#에서 엑셀파일 읽어오기) 이번에는 C#에서 엑셀 파일을 저장하는 법, 쓰는 법에 대해 쓰려 합니다. 저장하는 방법은 읽는 방법과 유사합니다. 참조파일이 필요합니다. 참조추가 -> COM -> Microsoft Excel 16.0 Object Library (여기서 16.0은 Excel의 버전입니다.) (예. Microsoft Excel 13.0 Object.... 등등) 상단에 using 구문을 추가합니다. using System.Runtime.InteropServices; using Excel = Microsoft.Office.Interop.Excel; ..
-
WPF Drag, Drop이 되는 ListBoxC#/WPF 2018. 2. 27. 09:45
이전 포스트(2018/01/30 - [C#/WPF] - WPF 한 ListView(ListBox)에서 Drag Drop)에서 ListBox에 Drag & Drop이 가능하도록 해보았었습니다. 하지만 단일 Item 만 Drag & Drop이 가능했었던 점, Drop이 될 위치가 보이지 않는 점 등 굉장히 기초적인 내용이였습니다. 이제 위에 서술된 내용 + 자잘한 내용등을 수정하여 재사용이 가능한 사용자 정의 컨트롤을 만들었습니다. ※ ListBox 의 Item 내용은 유일(Unique)해야 합니다. (Remove 관련) ※ Item을 꼭 GGData형으로 할 이유는 없으며, GGData 내부 Item의 형을 바꾸셔도 되고,GGData형을 사용하지 않을 경우 cs파일에서 GGData를 원하는 형으로 바꾸시면..
-
WPF ListView(ListBox) 드래그 하는 중 스크롤C#/WPF 2018. 1. 31. 11:06
※이 글은 ListView or ListBox에서 Drag기능을 구현한 다음 사용 가능합니다. ListView나 ListBox 컨트롤(List 컨트롤)에서 Item을 드래그 하며 순서를 바꾸는 도중, 현재 보이는 Item이 아닌 스크롤을 통해 이동하여 위치시켜야 하는 경우가 있습니다. Drag를 통해 List 컨트롤의 현재 Vertical Scroll을 옮기는 방법입니다. 해당 List 컨트롤에 DragOver EventHandler를 추가해줍니다. 123456789101112131415161718private void MyList_DragOver(object sender, DragEventArgs e){ ListView listView = sender as ListView; ScrollViewer sc..
-
WPF 한 ListView(ListBox)에서 Drag DropC#/WPF 2018. 1. 30. 10:47
WPF에서 ListView or ListBox(이하 List 컨트롤)와 같은 List 컨트롤 들에서 Item을 Drag, Drop하는 일이 자주 있습니다. 그런데 한글 자료로는 별로 없고 해외 자료들은 두 List 컨트롤 간에 Drag Drop이 주를 이루더군요. 그래서 여러 자료들을 찾고, 참고하여 한 List 컨트롤 내에서 Drag Drop으로 순서 바꾸기를 구현했습니다. 2018.01.29 - 아직 Item 사이에 커서가 위치한 상태로 Drop을 하면 맨 아래로 Drop되는 문제가 있습니다. 우선 List컨트롤에 아래의 EventHandler들을 추가해주어야 합니다.PreviewMouseLeftButtonDownPreviewMouseMoveDrop 또한 AllowDrop 속성을 True로 바꿔주어야..
-
간단한 음악플레이어Program 2018. 1. 5. 14:05
2017.03.10 - [C#/WPF] - WPF MediaPlayer Volume 사용 Music Player GG 다운로드 v0.2.1 (2018.09.16) : Google Drive, Naver Cloud 깃허브 : GitHub 서론. 프로그래밍을 처음 알게 된 뒤부터 평소에 사용하는 프로그램들을 직접 개발해서 사용해보고 싶었었다. WPF를 주로 공부하게 된 계기도 이 때문이 주 이유이다. 마침 깃허브에 대해서도 공부가 필요했었고, 개발 경험이 부족했기에 제대로 시작해보려 한다. 음악 듣는 것을 좋아하기에 가장 먼저 음악플레이어를 개발하게 되었다. 기능, 디자인 등은 음악플레이어들이 비슷하지만, 자주 사용하는 AIMP3(링크) 를 주로 참고(벤치마킹)했다. (초기 버전 : v0.1.0) 설명. 개..