일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- C#
- csharp
- tls
- nullable
- Binding
- windows
- File
- windows10
- coding-test
- git
- 코딩테스트
- Coding
- Github
- Microsoft
- string
- algorithm
- chashtag
- ListView
- logging
- WPF
- IValueConverter
- .net
- dotNET
- convert
- log
- commit
- Process
- programmers
- Visual Studio
- mysql
- Today
- Total
목록C# (73)
CHashtag

안녕하세요. 오늘은 제가 게임 개발 공부를 하며 알게 된 내용을 공유할까 합니다. 저도 처음인지라 글이 두서없을 수 있는점 양해 바랍니다. 어떻게 코드를 보지? Unity를 설치한 후, Sample 프로젝트를 실행시켜 보았다. 하지만 그 어느 곳에서도 C# 코드를 찾을 수 없었다.. (ㅠㅠ) C# 코드를 찾기 위해 내가 떠난 여정은 다음과 같다. WPF의 Property Event처럼 UI와 Behind Code를 연결해주는 부분을 UI Element Inspector에서 찾을 수 없을까? 실패 Hierachy 창에 있지 않을까? X Edit -> Open C# Project 를 클릭하면 되지 않을까? 아무일도 일어나지 않는다. 사실 이게 정답이다. 아래 Project의 폴더 안에 있지 않을까? 있다! ..

안녕하세요. 오늘은 WPF에서 사용가능한 DispatherTimer 사용방법에 대해 알아보도록 하겠습니다. DispatherTimer은 정해진 Interval마다 Tick Event Listener함수를 호출해주는 기능을 가지고 있습니다. using System; using System.Windows.Threading; private void InitTimer() { DispatcherTimer timer = new DispatcherTimer(); // 1초 마다 Tick 됩니다. timer.Interval = TimeSpan.FromMilliseconds(1000); // Event 특성상 여러 이벤트를 등록시킬 수 있습니다. timer.Tick += Timer_Tick; timer.Tick += T..

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; } 감사합니다.

안녕하세요. 오늘은 하나의 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..