使えます。
こんなコードビハインドを書いて…
using System; using Windows.UI.Xaml; using Windows.UI.Xaml.Controls; namespace App5 { publicsealedpartialclass MainPage : Page { public DateTime Now => DateTime.Now; public MainPage() { this.InitializeComponent(); } privatevoid Button_Click(object sender, RoutedEventArgs e) { this.Bindings.Update(); } } }
そして、XAMLでこんな感じで書けます。
<Page x:Class="App5.MainPage"xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"xmlns:local="using:App5"xmlns:d="http://schemas.microsoft.com/expression/blend/2008"xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"xmlns:System="using:System"mc:Ignorable="d"><StackPanel Background="{ThemeResource ApplicationPageBackgroundThemeBrush}"><TextBlock Text="{x:Bind System:String.Format('{0:yyyy/MM/dd HH:mm:ss.fff}', Now)}" /><Button Content="Update"Click="Button_Click" /></StackPanel></Page>
ただまぁ、何故かエディタ上はエラーになるのですが…。実行すると動きます。
まぁ、毎回フォーマットを指定するのもだるいので、書式出力系共通関数みたいなのを用意しておいて
using System; namespace App5 { publicstaticclass Utils { publicstaticstring Format(DateTime dateTime) { return dateTime.ToString("yyyy/MM/dd HH:mm:ss.fff"); } } }
こういう感じで使うのがいいでしょう。
<Page x:Class="App5.MainPage"xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"xmlns:local="using:App5"xmlns:d="http://schemas.microsoft.com/expression/blend/2008"xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"xmlns:System="using:System"mc:Ignorable="d"><StackPanel Background="{ThemeResource ApplicationPageBackgroundThemeBrush}"><TextBlock Text="{x:Bind local:Utils.Format(Now)}" /><Button Content="Update"Click="Button_Click" /></StackPanel></Page>
ちなみに、これでもデザイナは表示されますがエディタ上はエラーになります…。 ツール類しっかりしてくれ。