Microsoft .NET/C#
-
[C# Console] Console Input Key (키 입력)Microsoft .NET/C# 2019. 7. 2. 21:35
반복문을 사용하여 지속적으로 키 입력을 받고 입력받은 값으로 문자(#)을 움직이는 간단한 예제입니다. using System; namespace csConsole_EXAMPLE_KEY { class Program { static void Main(string[] args) { //키입력값받는 변수 ConsoleKeyInfo cki; //#의 시작위치 int x = 10, y = 10; while (true)//무한루프 { //화면초기화 Console.Clear(); //커서를 x,y의 위치로 이동 Console.SetCursorPosition(x, y); //#을 입력 Console.Write('#'); //누르는 키를 입력받아 true값이면 넣음 cki = Console.ReadKey(true); sw..
-
[C#] 자주 사용하는 단축키 모음Microsoft .NET/C# 2019. 4. 19. 14:05
기능 단축키 비고 속성 창 F4 속성창을 단일창으로 사용할때 좋음. 빠른 작업 Ctrl + . 또는 Alt + Enter 매우 좋음. 주석 입력 Ctrl + K,C 매우 좋음. 주석 제거 Ctrl + K,U 매우 좋음. 책갈피 등록, 제거 Ctrl + K,K 개발 예정이나 특이점을 체크하고 폴더로 관리하면 좋음. 책갈피로 이동 Ctrl + K,N 책갈피에 폴더생성 Ctrl + K,F 책갈피 관리자 Ctrl + K,W 현재줄의 코드 이동 Ctrl +(위 또는 아래) 특정 영역 선택 Alt + Drag 매우 매우 좋음. 디자인 모드 Shift + F7 WPF에서 매우 좋음. 소스 모드 F7 WPF에서 매우 좋음. 정렬하기 (선택영역) Ctrl + K,F 전체정렬 Ctrl + K,D 선택 영역소스 접기, 펼치..
-
[C#] C#에서 Python 코드 사용하기 (함수, 클래스)Microsoft .NET/C# 2019. 4. 11. 18:18
C#에서 Python Code를 사용하기 위해서는 NuGet 패키지를 설치해야 합니다. IronPython 패키지를 설치합니다. def GetString(): return 'Hello World' def Sum( num1, num2 ): return num1 + num2 def GetList1(data): data.append('Python1') data.append('Python2') data.append('Python3') return data def GetList2(): data=[] data.append('Python1') data.append('Python2') data.append('Python3') return data class World: def __init__(self): self.na..
-
[C#] 널 결합 연산자 (Null Coalesce Operator)Microsoft .NET/C# 2019. 4. 10. 10:41
string str = null; (str ?? "비어있음.") ?? 좌측에 존재하는 변수(str)를 null과 비교(==)하여 true라면 ?? 우측의 값을 반환하고 false라면 변수(str)의 값을 반환한다. string str = null; //str의 값이 NULL이라면 "비어있음."을 반환한다. //1번 - Null Coalesce Operator (널 결합 연산자) MessageBox.Show((str ?? "비어있음.")); //2번 - 3항 연산자 사용 MessageBox.Show((str == null ? "비어있음." : str)); //3번 - if문 사용 if (str == null) str = "비어있음."; MessageBox.Show(str);
-
[C#] cm <-> pixel 변환, DPI 구하기Microsoft .NET/C# 2019. 4. 2. 10:30
DPI 활용 방향 디스플레이에 출력되는 물체의 크기가 실제 크기와 동일해야 하는 경우 DPI를 사용하여 CM를 PIXEL로 변환하여 출력 C#에서 DPI 구하기 public class ScreenInformations { public static uint RawDpi { get; private set; } static ScreenInformations() { uint dpiX; uint dpiY; GetDpi(DpiType.RAW, out dpiX, out dpiY); RawDpi = dpiX; } /// /// Returns the scaling of the given screen. /// /// The type of dpi that should be given back.. /// Gives the h..
-
[C#] 조건부 컴파일 기호, 여러 개(코드 비활성화, 코드 숨기기, #if, #else, #endif)Microsoft .NET/C# 2019. 3. 21. 18:30
사용 목적에 따라 특정 코드를 비활성화해야 되는 상황에는 #define과 #if, #else, #endif를 사용하여 처리하지만 다수의 CS에서 같은 처리를 하게 되면 매우 불편합니다. 그런 상황에서는 조건부 컴파일 기호와 #if, #else, #endif를 사용하면 됩니다. 1. 솔루션 우클릭 -> 속성 -> 빌드 여백을 추가하여 다수의 기호를 추가가능합니다. 2. 코드에 적용 #if A-TYPE //code A #else //code B #endif 위 이미지와 같이 해당 기호가 조건부 컴파일 기호인지 체크하여 해당 코드만 활성화합니다.
-
[C#] #if, #else, #endif (Debug or Release에서 동작하는 코드 만들기)Microsoft .NET/C# 2019. 3. 6. 01:56
Debug 또는 Release에서 동작하는 코드 만들기 컴파일러의 상태에 따라 해당되지 않는 코드는 자동으로 주석 처리된다. //지금은 Release string strCompiler = string.Empty; #if DEBUG strCompiler = "DEBUG"; #else strCompiler = "RELEASE"; #endif Console.WriteLine(string.Format("Compiler : {0}", strCompiler)); //출력 - Compiler : RELEASE