일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
- git
- .net
- Visual Studio
- windows
- WPF
- convert
- File
- IValueConverter
- 코딩테스트
- Binding
- chashtag
- tls
- windows10
- nullable
- Microsoft
- Github
- logging
- string
- dotNET
- csharp
- algorithm
- log
- coding-test
- mysql
- C#
- programmers
- commit
- Coding
- ListView
- Process
- Today
- Total
목록전체 글 (146)
CHashtag

WPF 프로그래밍 중 바인딩될 값에 따라 다른 값을 지정해 주어야 할 때가 종종 있습니다. (예를 들면 입력받은 text가 10자 이상이면 background color가 변한다. 같은 느낌으로요.) (Binding StringFormat의 상위 호환이라고 생각하시면 편할 것 같습니다.) 이럴 때 사용할 수 있는 것이 바로 IValueConverter, IMultiValueConverter입니다. 이해를 돕기위해 예제 프로그램을 제작해 보도록 하겠습니다. Converter Binding이 기본적으로 2 way를 지원하듯, Converter도 2 way converting을 지원합니다. ViewModel -> View로 가는 Convert 함수와 View -> ViewModel로 가는 ConverterBa..
안녕하세요. 오늘은 "요청이 중단되었습니다. ssl/tls 보안 채널을 만들 수 없습니다" 라는 에러를 해결할 수 있는 방법에 대해 알아보도록 하겠습니다. web request를 보내기 전에 아래 코드를 추가하면 됩니다. if (requestMessage.RequestUri.Scheme == Uri.UriSchemeHttps) { ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls | SecurityProtocolType.Tls11 | SecurityProtocolType.Tls12; } 감사합니다.

안녕하세요. 오늘은 저의 추운 겨울을 따뜻하게 나게 해 준 온열 장패드를 리뷰하려 합니다. S-80 상세 설명 링크 : https://coupa.ng/cbfrij 샤오미 SINCO 온열 발열 마우스패드 책상 전기매트 데스크패드 COUPANG www.coupang.com 가격 : 약 18,000원 성능 : ★★★★☆ 가성비 : ★★★★☆ 디자인 : ★★★★★ 제품 설명 - 3단계의 온도 조절 가능 (38, 40, 42) - 42: 빨강 - 40: 초록 - 38: 파랑 - 80cm의 넓은 장패드 - 재질: 인조 가죽 (폭신폭신함) - 한 시간 단위로 알려줌 (소리 x, led 깜빡거림) - 이쁜 전원부 장점 - 따뜻하다!!! (정말 너무 따뜻합니다.) (42도는 맨살에 닿으면 뜨겁다고 느껴질 정도로 따뜻합니..

안녕하세요. 오늘은 하나의 Property에 여러 값을 동시에 Binding 하는 MultiBinding에 대해 알아보도록 하겠습니다. (Converter에 대한 설명은 다른 게시글로 정리하겠습니다.) 코드에 대한 설명은 주석으로 달아놓았으니 참고 바랍니다. 감사합니다.

안녕하세요. 오늘은 개별 파일 크기를 구하는 방법에 대해 알아보도록 하겠습니다. 간단한 내용이니 별도의 내용 없이 코드로 보여드리겠습니다. 해당 크기는 디스크 할당 크기가 아닌 그냥 크기 임을 알려드리고 디스크 크기 구하는 방법은 다른 게시글로 정리하도록 하겠습니다. public long GetFileSize(string filePath) { long fileSize = 0; if(File.Exists(filePath)) { FileInfo info = new FileInfo(filePath); fileSize = info.Length; } return fileSize; } 감사합니다.

안녕하세요. 오늘은 MVVM패턴에서 CheckBox의 값을 ViewModel로 전달하고, 또 그 반대로 ViewModel에서 값을 CheckBox로 전달하는 방법에 대해 알아보도록 하겠습니다. // MainViewModel.cs using System.ComponentModel; using System.Runtime.CompilerServices; namespace WpfApp14 { public class MainViewModel : INotifyPropertyChanged { private bool _isChecked = false; public bool IsChecked { get => _isChecked; set { _isChecked = value; NotifyPropertyChanged(); ..

결론만 알려드리겠습니다. int defaultValue = 999; int? nullableInt = null; // int wrongResult = (int)nullableInt; // System.InvalidOperationException here int result = nullableInt.GetValueOrDefault(defaultValue); // 999 감사합니다.

결론부터 알려드리겠습니다. public string[] SelectMultiFiles(string defaultPath) { string[] selectPath = null; var openFileDialog = new OpenFileDialog(); openFileDialog.Multiselect = true; if (Directory.Exists(defaultPath)) { openFileDialog.InitialDirectory = defaultPath; } else { openFileDialog.InitialDirectory = @"C:\"; } bool? result = openFileDialog.ShowDialog(); if (result.HasValue && result.Value) { se..

결론부터 알려드리겠습니다. string str = "aBcDeFg"; string upperStr = str.ToUpper(); // output : ABCDEFG string lowerStr = str.ToLower(); // output : abcdefg ToUpper vs ToUpperInvariant Microsoft 문서에 의하면 다음과 같이 정리되어 있습니다. ToUpper 대문자로 변환된 문자열의 복사본을 반환합니다. ToUpperInvariant 문화권의 대소문자 규칙을 사용하여 대문자로 변환된 String 개체의 복사본을 반환합니다. 예를 들어 터키의 경우 i의 대문자가 I가 아닌 i를 사용한다고 합니다. 따라서 다양한 나라(문화)를 지원하는 프로그램일 경우에는 ToUpperInvaria..

안녕하세요. 오늘은 DateTime과 TimeStamp간의 변환 방법에 대해 알아보도록 하겠습니다. 간단하니 바로 코드로 보여드리도록 하겠습니다. public long GetCurrentTimeStamp() { DateTime dt = DateTime.Now; return ((DateTimeOffset)dt).ToUnixTimeSeconds(); } public long DateTimeToTimeStamp(DateTime value) { return ((DateTimeOffset)value).ToUnixTimeSeconds(); } public DateTime TimeStampToDateTime(long value) { DateTime dt = new DateTime(1970, 1, 1, 0, 0, 0,..