반응형

전체 글 134

[C#] Newtonsoft private set 값 DeserialzeObject 방법

Class나 struct의 Property를 private set으로 설정한 뒤 DeserialzeObject를 수행하게 되면 제대로 값을 가져오지 못한다. 이것은 해당 Property가 Json Property라고 인식을 못해서 생기는 문제이다. 아래와 같은 방법으로 간단히 해결가능하다. public class Box { [JsonProperty] public double Length { get; private set; } [JsonProperty] public double Width { get; private set; } [JsonProperty] public double Height { get; private set; } } 해당 프로퍼티를 Json property라고 설정을 해두면 처리 완료!

프로그래밍/C# 2022.01.18

[WPF] canvas 내용을 비트맵 이미지로 저장

canvas에 있는 내용을 그대로 화면으로 캡쳐하여 비트맵 파일로 저장하는 방법이다. 일단 저장을 원하는 Canvas Control에 x:Name을 지정한다. 여기선 그냥 canvas라고 지정하였다. canvas에 그리기 원하는 내용을 넣는다. 아래의 코드를 실행시킨다. RenderTargetBitmap rtb = new RenderTargetBitmap((int)canvas.ActualWidth, (int)canvas.ActualHeight, 96, 96, PixelFormats.Pbgra32); rtb.Render(canvas); using (Stream stream = new FileStream(System.Environment.CurrentDirectory + @"\background.bmp", ..

프로그래밍/WPF 2021.09.09

Conda에서 설치 오류

Collecting package metadata (current_repodata.json): failed CondaHTTPError: HTTP 000 CONNECTION FAILED for url Elapsed: - An HTTP error occurred when trying to retrieve this URL. HTTP errors are often intermittent, and a simple retry will get you on your way. 회사에서 아나콘다를 설치 후, pytorch 를 설치하려고하니 위와 같은 에러가 뜨면서 설치가 안되었다. ssl 오류 같았는데 조사해보니 아래와 같이 ssl을 인증하지말라는 명령어로 해결하란다. conda config --set ssl_verify..

카테고리 없음 2021.07.26

[WPF] UserControl DependencyProperty 설정과 Binding 방법

자주 쓰이는 UserControl을 만들 때, 해당 컨트롤을 바딩인 속성 설정과 실제 바인딩 방법에 대해 알아본다. Usercontrol xaml cs namespace WintexMonitoring.View { /// /// MaterialCard.xaml에 대한 상호 작용 논리 /// public partial class MaterialCard : UserControl { public string Title { get { return (string)GetValue(TitleValueProperty); } set { SetValue(TitleValueProperty, value); } } public static readonly DependencyProperty TitleValueProperty = D..

프로그래밍/WPF 2021.07.21

[C#] Object 안에 Array 데이터 가져오기

가끔 object 타입으로 Array 값이 들어있는 경우가 있다. 일반적인 상황에서는 변수형으로 캐스팅하면되지만 Array는 IEnumerable으로 캐스팅하여 처리한다. 아래의 예는 arrayObject 내에 배열로 3개의 데이터가 arrayObject라는 object 안에 있을때 값을 얻는 방법이다. var sizeList = arrayObject as IEnumerable; double[] size = new double[3]; int count = 0; foreach (var item in sizeList) { size[count] = Convert.ToDouble(item); count++; }

프로그래밍/C# 2021.07.21
반응형