2014-12-12 165 views
2

我试图设置日期时间到一个文本框,但是这给了一个异常:System.Windows.Data.Binding.Path'抛出一个异常。wpf文本框绑定日期时间

如果我使用TextBlock一切都很好。

任何帮助将不胜感激

谢谢

xmlns:sys="clr-namespace:System;assembly=mscorlib" 

<TextBlock Name="block" Text="{Binding Source={x:Static sys:DateTime.Now}, StringFormat='yyyy-MM-dd HH:mm:ss '}"/> 

<TextBox Name="block1" Text="{Binding Source={x:Static sys:DateTime.Now}, StringFormat='yyyy-MM-dd HH:mm:ss '}"/> 

回答

6

这种结合的作品使用文本框,应该是你在找什么:

<TextBox HorizontalAlignment="Left" Height="23" Margin="0,260,0,0" Text="{Binding Source={x:Static sys:DateTime.Now}, Mode=OneWay, StringFormat='yyyy-MM-dd HH:mm:ss '}" VerticalAlignment="Top" Width="120"/> 

结果:

enter image description here

4

当你设置的绑定模式能正常工作的TextBoxOneWay

<TextBox Grid.Row="1" Name="block1" Text="{Binding Source={x:Static sys:DateTime.Now}, StringFormat='yyyy-MM-dd HH:mm:ss ',Mode=OneWay}"/> 

这是由于这样的事实即TextBlock中的默认绑定模式是OneWay而在TextBox中是TwoWay