WPF 前臺觸發器實時獲取當前時間

WantRemake發表於2024-08-17

1.引入名稱空間

xmlns:sys="clr-namespace:System;assembly=System.Runtime"

2.顯示時間程式碼

<StackPanel Orientation="Horizontal" Grid.Row="1" VerticalAlignment="Center" HorizontalAlignment="Left">
    <TextBlock FontSize="15" DataContext="{x:Static sys:DateTime.Now}">
        <Run Text="{Binding Now,Mode=OneWay,StringFormat={}{0:yyyy年MM月dd日 HH:mm:ss dddd},ConverterCulture=zh-CN}" Name="tb_datetime" Foreground="White"/>
    </TextBlock>
</StackPanel>

3.新增觸發器

<Window.Triggers>
    <EventTrigger RoutedEvent="UserControl.Loaded">
        <BeginStoryboard>
            <Storyboard>
                <ObjectAnimationUsingKeyFrames Duration="0:0:2" 
                                       Storyboard.TargetName="tb_datetime"
                   Storyboard.TargetProperty="DataContext" RepeatBehavior="Forever">
                    <DiscreteObjectKeyFrame Value="{x:Static sys:DateTime.Now}" KeyTime="0:0:0"/>
                    <DiscreteObjectKeyFrame Value="{x:Static sys:DateTime.Now}" KeyTime="0:0:1"/>
                </ObjectAnimationUsingKeyFrames>
            </Storyboard>
        </BeginStoryboard>
    </EventTrigger>
</Window.Triggers>

  

相關文章