[wpf/c#] mvvm light, CommandParameter 사용법 #Command사용 시 Parameter를 넘길 수 있다. #View(xaml) - CommandParameter="aaaa"등과 같이 값을 넣어준다. #ViewModel //정의 public RelayCommand OnTextChangedCommand { get; set; } private void OnTextChangedCommandAction(string msg) { MessageBox.Show(TextBoxText); } //초기화 OnTextChangedCommand = new RelayCommand((msg)=> OnTextChangedCommandAction(msg), null); 이렇게 간단하게 쓸 수 있다. #mv..
[wpf/c#] mvvm light를 이용한 간단한 샘플 프로그램(소스) #1 nuget package - mvvm light 설치 #2 ReceiverViewModel 구현 public class ReceiverViewModel : ViewModelBase { private string _contentText; public string ContentText { get { return _contentText; } set { _contentText = value; RaisePropertyChanged("ContentText"); } } public ReceiverViewModel() { Messenger.Default.Register(this, OnReceiveMessageAction); } private..
[wpf/c#] MVVM 기본 개념 및 설명 (소스 기반) M : Model - 데이터 객체(Class Obejct) V : View - UI 화면(xaml) VM : ViewModel - View와 Model의 비지니스 로직 #Model INotifyPropertyChanged를 통하여 변경 사항을 알린다. public class User : INotifyPropertyChanged { private int userId; private string firstName; private string lastName; private string city; private string state; private string country; public int UserId { get { return userId; ..
[wpf/c#/unity] Wake On Lan 사용하기(원격부팅) WakeOnLan #매직패킷을 활용하여 Lan으로 PC를 부팅하는 방법 [조건] #랜카드 저전력 모드 Off, 매직패킷,WakeOnLan 기능 활성화 #바이오스 PCI-E 기능 켜기 #유선랜으로 연결 #구현 코드 public class WakeOnLan : UdpClient { public WakeOnLan() : base() { } /// /// 컴퓨터 부팅 하기 /// /// 부팅 할 컴퓨터의 맥어드레스 public void TurnOnPC(string macAddress) { this.Connect(new System.Net.IPAddress(0xffffffff), 0x2fff); //255.255.255.255 : 12287 Ma..
[C#/wpf/unity] ftp 라이브러리 #소스 경로 https://github.com/gofogo2/Ftp_Library.git #업로드 사용법 (다운로드도 동일하게 사용가능) Ftp ftp = new Ftp("192.168.0.107", "ftpuser", "1"); //이벤트 생성 ftp.UploadFileAsyncCompleted += Ftp_UploadFileAsyncCompleted; ftp.UploadFileListChanged += Ftp_UploadFileListChanged; ftp.UploadProgressChanged += Ftp_UploadProgressChanged; //업로드 할 업로드 객체 생성 List items = new List(); FtpUploadDirectory..
[wpf/c#] wpf에서 fade in 구현(Animation 이용) #Xaml - Reactangle 추가 #C# - DoubleAnimation을 이용하여 Fade 구현 public void Fade() { fade.Visibility = Visibility.Visible; DoubleAnimation dba1 = new DoubleAnimation(); dba1.From = 1; dba1.To = 0; dba1.Duration = new Duration(TimeSpan.FromSeconds(5)); fade.BeginAnimation(OpacityProperty, dba1); } 필요한 부분에 삽입하여 사용하면된다. #c# #wpf #xaml #rectangle #fill #fade in #fad..
#xaml 코드에서 mediaelement 추가 # NatuaralDuration을 통하여 재생시간을 가져온다 #!!여기서 NatuaralDuration에대한 정보는 반드시 MediaOpend 이벤트 이후에 가져 올 수 있다!! public MainWindow() { InitializeComponent(); me.MediaOpened += Element_MediaOpened; } //반드시 MediaOpend 이벤트 이후에 Duration(재생시간)을 가져 올 수 있다 private void Element_MediaOpened(object sender, EventArgs e) { txt.Text = me.NaturalDuration.TimeSpan.TotalSeconds.ToString("0.000");..
[c#/wpf/unity/osc] udp 기반 osc 통신 방식 구현(send/receive) #원본 라이브러리 경로 https://github.com/ValdemarOrn/SharpOSC GitHub - ValdemarOrn/SharpOSC: Full implementation of Open Sound Control in C# .NET 3.5 Full implementation of Open Sound Control in C# .NET 3.5 - GitHub - ValdemarOrn/SharpOSC: Full implementation of Open Sound Control in C# .NET 3.5 github.com #테스트 소스(헬퍼 라이브러리) 깃헙 경로 https://github.com/gof..
[C#/wpf/winform] Singleton(싱글톤) 코드(복사해서 사용하기) #싱글톤 구현 public class OSCReceiverHelper { private static OSCReceiverHelper _instance { get; set; } public static OSCReceiverHelper Instance { get { return _instance ?? (_instance = new OSCReceiverHelper()); } } public void Test() { Debug.WriteLine("Helloworld"); } } #싱글톤 사용 public partial class MainWindow : Window { public MainWindow() { InitializeCom..
C#에서 Datetime으로 시간을 가져올 수 있고, 그로 인해 손쉽게 시계 구현이 가능하다. public long today = 0; public void Settings(int sec) { dt_zone2 = new DispatcherTimer(); dt_zone2.Interval = TimeSpan.FromSeconds(1); dt_zone2.Tick += Dt_zone2_Tick; } private void Dt_zone2_Tick(object sender, EventArgs e) { SetNow(); } private void SetNow() { today = DateTime.Now.Ticks; DateTime dt = new DateTime(today); Debug.WriteLine($"now..