프로그램 화면 하단에 StatusBar 를 이용해 시계를 표시하는 방법입니다.
using System;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Controls.Primitives;
using System.Windows.Threading;
namespace WpfApp
{
/// <summary>
/// MainWindow.xaml에 대한 상호 작용 논리
/// </summary>
public partial class MainWindow : Window
{
/// <summary>
/// 시간 상태바 아이템입니다.
/// </summary>
StatusBarItem timeStatusBarItem;
public MainWindow()
{
InitializeComponent();
DockPanel panel = new DockPanel();
Content = panel;
// 클라이언트 영역의 아래쪽에 도킹된 상태바를 만든다.
StatusBar status = new StatusBar();
panel.Children.Add(status);
DockPanel.SetDock(status, Dock.Bottom);
// StatusBarItem를 만든다.
timeStatusBarItem = new StatusBarItem();
timeStatusBarItem.HorizontalAlignment = HorizontalAlignment.Right;
status.Items.Add(timeStatusBarItem);
// StatusBarItem을 갱신하기 위한 타이머를 만든다.
DispatcherTimer timer = new DispatcherTimer();
timer.Interval = TimeSpan.FromSeconds(1);
timer.Tick += TimerOnTick;
timer.Start();
// 화면 중앙에 RichTextBox 를 만든다.
RichTextBox richTextBox = new RichTextBox();
panel.Children.Add(richTextBox);
}
/// <summary>
/// 타이머 동작 이베트입니다.
/// </summary>
/// <param name="sender"></param>
/// <param name="args"></param>
void TimerOnTick(object sender, EventArgs args)
{
DateTime dt = DateTime.Now;
this.timeStatusBarItem.Content = dt.ToLongDateString() + " " + dt.ToLongTimeString();
}
}
}
결과
DispatcherObject를 상속받은 WPF의 모든 public 클래스를 트리로 보여주는 프로그램 (0) | 2024.07.10 |
---|---|
WPF TreeView 를 이용해 파일탐색기 만들기 (0) | 2024.07.10 |
WPF KeyGesture 사용해 키 이벤트 처리하기 (0) | 2024.07.10 |
WPF SetBinding 을 이용해 ListBox 선택에 따른 배경색 변경하기 (0) | 2024.07.10 |
WPF 디스크 사용량 표시하기 (0) | 2024.07.10 |