wpf文本框绑定日期时间

时间:2014-12-12 23:30:20

标签: wpf textbox

我试图将日期时间设置为文本框,但这会产生异常:System.Windows.Data.Binding.Path'抛出异常。

如果我使用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 '}"/>

2 个答案:

答案 0 :(得分:7)

当您将TextBox中的绑定模式设置为OneWay时,此方法正常工作:

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

这是因为TextBlock中的默认绑定模式为OneWayTextBox中的默认绑定模式为TwoWay

答案 1 :(得分:7)

此绑定使用TextBox,应该是您正在寻找的内容:

<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

相关问题