머리말
WPF 프레임워크는 VB, C#와 같은 비하인드 소스코드와 XAML 파일로 하나의 개발 화면이 구성된다. 이러한 특성으로 인해 현재 시간 값을 표시하기 위해 비하인드 소스코드와 XMAL 디자인 영역 두 가지 방법이 존재한다. 본 포스팅에서는 비하인드 소스코드에서 현재시간을 가져오는 방법이 아닌 XAML 코드에서 직접 현재시간을 표시하는 방법을 소개한다.
XMAL 디자인 소스에서 현재시간 표시
코드는 매우 간결하고 방법 또한 간단하게 해결할 수 있다. 본인이 처음 개발할 당시 WPF 프레임워크 관련된 자료가 충분하지 않아서, 해당 방법을 찾는데 꽤나 많은 시간이 걸렸다. 아래와 같이 클래스를 로드하고 시간을 표시할 컴포넌트에 바인딩만 해주면 끝이 난다.
클래스 추가
XMAL 디자인 소스 영역 최상단에 아래와 같이 사용할 클래스를 참조하는 코드를 추가한다.
xmlns:wookoa="clr-namespace:System;assembly=mscorlib"
컴포넌트에 시간 바인딩
텍스트 필드를 표현할 수 있는 컴포넌트는 모두 시간 값을 바인딩할 수 있다. 아래의 코드를 참조해서 적절하게 바인딩을 추가한다.
<TextBlock Text="{Binding Source={x:Static wookoa:DateTime.Now}, StringFormat='{{0:yyyy-MM-dd HH:mm:ss}', Mode=OneWay}}" />
꼬리말
본 포스팅에서 소개하는 방법으로 XAML 코드에서도 직접 현재 시간을 표현할 수 있다. 사실 본인은 위와 같은 방법으로 시간을 표현하면 실시간 표현이 가능할 줄 알았는데, 화면이 로드되는 순간의 시간만 표현하고 실시간으로 반영은 안 되었다. WPF 개발 환경에서 XMAL 디자인 코드로 현재시간을 표현하는 방법에 대해서 소개한 본 포스팅은 이로써 마무리를 짓도록 한다.
소중한 댓글 (0)