전체 글 41

[ wpf ] DataTemplate 속성 이름에 접근하는 방법 / 클릭 된 라디오 버튼 이름 가져오기

DataTemplate 등 안의 컨트롤 이름에 접근 할 수 없음 접근하기 위해선 함수 하나 만든다 public IEnumerable FindVisualChildren(DependencyObject depObj) where T : DependencyObject { if (depObj != null) { for (int i = 0; i < VisualTreeHelper.GetChildrenCount(depObj); i++) { DependencyObject child = VisualTreeHelper.GetChild(depObj, i); if (child != null && child is T) yield return (T)child; foreach (T childOfChild in FindVisualChi..

WPF 2022.11.24

[ Rabbitmq ] Rabbitmq 통신: c# 과 파이썬 이용해서 rabbitmq publish , consume

c# easynetq : publish , python pika : consume 1. pika consume credentials = pika.PlainCredentials('id','pw') # create connection connection = pika.BlockingConnection( pika.ConnectionParameters(host=ip, virtual_host='/', credentials=credentials)) # create channel channel = connection.channel() # declare queue result = channel.queue_declare(queue='MqttTestQueue', exclusive=True) queue_name = resul..

Rabbitmq 2022.09.04

[ log4net ]c# log4net 사용법 : 콘솔과 파일 로그 출력

log4net 은 c# 에서 사용하는 로그 라이브러리로, 따로 코드정리 하지 않고 log4net 을 사용해서 쉽게 로그를 남길 수 있다 log4net은 콘솔, 디비, 파일, 이메일 등 여러 곳에 로그를 출력 시킬 수 있는데 콘솔과 파일만 다뤄봄 먼저, Nuget 패키지관리에서 log4net 설치! Appender 로그 출력을 위해서 Appender로 어떤 형식(콘솔, 파일 , .. )으로 로그를 출력할지 정함 // 콘솔 출력 // 파일 출력 -> rolling file ... // 파일 출력 -> file ... 파일과 롤링 파일의 차이점은 롤링 파일은 파일 크기가 max 사이즈 초과 시, 자동으로 파일을 분할하지만 파일 은 제한없이 파일 크기가 커질수도 있다 각 Appender 안에는 여러 옵션들을 지..

라이브러리 2022.09.01

[ wpf ] Live Chart _ Doughnut Chart 사용해보기

1. NuGet 패키지 관리에서 LiveChart를 다운 받는다. 2. 네임 스페이스 추가 xmlns:lvc="clr-namespace:LiveCharts.Wpf;assembly=LiveCharts.Wpf" 3. 코드 _ xaml 4. 코드 _ViewModel.cs public SeriesCollection SeriesCollection { get; set; } int testNum = 0; DispatcherService.Invoke((System.Action)(() => { Random rand = new Random(); testNum = rand.Next(1, 100); SeriesCollection = new SeriesCollection { new PieSeries { Title="Succes..

WPF 2021.11.26

[ open API ] open API _ 공공 데이터 포털 xml 데이터 가져오기

1. 원하는 데이터를 선택한다. 2. 활용신청을 클릭해서 신청하고 승인이 나면 데이터 이용이 가능하다. 3. 샘플 코드 4. 요청 변수를 url 에 다 넣어서 보냄 url에 데이터 넣음 string url = string.Format("{0}?ServiceKey={1}&pageNo={2}&numOfRows={3}&startCreateDt={4}&endCreateDt={5}", targetUrl, serviceKey, pageNo, numOfRows, startCreateDt, endCreateDt); 5. xml 로 받은 데이터를 파싱한다. -> XmlDocument 클래스를 이용 XmlDocument document = new XmlDocument(); document.LoadXml(xmlData); ..

C#/c# 2021.11.17

[ wpf ] mvvm ViewModel에서 이벤트 생성해서 사용하기

nuget 패키지 설치 mainxaml 네임스페이스 추가 1 2 xmlns:i="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity" xmlns:ei="http://schemas.microsoft.com/expression/2010/interactions" cs /window> 혹은 /Usercontrol> .... 바로 뒤에 추가 1 2 3 4 5 Colored by Color Scripter cs viewModel 페이지에서 함수 생성 1 2 3 4 5 6 7 8 public class MainViewModel : INotifyPropertyChanged { public void LoadEvent() { //..

WPF 2021.07.09

[ wpf ] Remove ListView Header Separator Line 리스트뷰 헤더 분리선 없애기

리스트뷰 헤더 분리선 없애기 전 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 32 33 34 35 36 37 38 Colored by Color Scripter cs 리스트뷰 헤더 분리선 없애기 아래 소스 추가 1 2 cs 1 2 3 4 5 6 7 8 9 10 11 Colored by Color Scripter cs 1 cs 전체소스 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 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 Colored by Co..

WPF 2021.07.09