2014-03-06 10 views
2

clture를 사용하여 viewmodel의 날짜/시간 유형 속성의 날짜 형식을 변경하는 방법. 아래 코드를 사용하여 문화를 변경합니다.날짜 형식을 변경하는 방법

 CultureInfo newCulture = null; 
     newCulture = (CultureInfo)Thread.CurrentThread.CurrentCulture.Clone(); 
     newCulture.DateTimeFormat.ShortDatePattern = "dd/MM/yyyy"; 
     newCulture.DateTimeFormat.DateSeparator = "/"; 


     if (newCulture != null) 
     { 
      Thread.CurrentThread.CurrentCulture = newCulture; 
      Thread.CurrentThread.CurrentUICulture = newCulture; 
     } 

뷰의 datetimePicker 형식이 변경되었지만 viewmodel의 속성 형식이 반영되지 않았습니다. 어떤 도움을 주시면 감사하겠습니다.

아래 속성입니다.

private DateTime _fromDate = DateTime.Now; 
    public DateTime FromDate 
    { 
     get { return _fromDate; } 
     set 
     { 
      _fromDate = value; 
      OnPropertyChanged("FromDate"); 
     } 
    } 
+0

문화를 설정하기 위해 viewmodel 생성자에 코드를 작성 했으므로 내 편이 좋습니다. – Betty

+0

어떤 스레드 또는 배경 작업자를 사용하고 있습니까? –

+0

@ J29 : 예 저는 backgroundworker를 사용하고 있습니다. – user3354206

답변

0

backgroundworker에서 FromDate의 값을 확인하면 동일한 시스템 형식을 사용합니다. 당신은 BackgroundWorker에 내부의 문화를 변경해야 "DD/MM은/년"

var worker = new BackgroundWorker(); 
     worker.DoWork += (o, ea) => 
     { 
     //and here would be system format 
     }; 
     worker.RunWorkerCompleted += (o, ea) => 
     { 

     }; 

가능한 솔루션과 같은 기술로

// 여기에 당신의 형식이 될 것입니다.

+0

많은 감사 J29. – user3354206

관련 문제