c# - 将 WPF DatePicker 绑定到字符串属性
问题描述
我想绑定DatePicker
到视图模型的字符串属性。麻烦的是设置正确的字符串格式。将日期存储在字符串属性中是特定于问题的。
除字符串格式外,绑定工作正常。我的xml是:
<DatePicker SelectedDate="{Binding Value, StringFormat=dd.MM.yyyy}"/>
我期望 string 15.08.2019
,但 string 是8/15/2019 12:00:00 AM
[编辑]这个问题不重复。通过样式更改 DatePicker 的 TextBox 的字符串格式只会影响其自身,而不是绑定。
解决方案
您需要更改 DatePickerTextBox 的模板
<DatePicker SelectedDate="{Binding Path = Value, StringFormat = {}{0:dd.MM.yyyy}}">
<DatePicker.Resources>
<Style TargetType="DatePickerTextBox">
<Setter Property="Control.Template">
<Setter.Value>
<ControlTemplate>
<TextBox x:Name="PART_TextBox" Text="{Binding Path=SelectedDate, StringFormat = {}{0:dd.MM.yyyy}, RelativeSource={RelativeSource AncestorType={x:Type DatePicker}}}" />
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
</DatePicker.Resources>
</DatePicker>
推荐阅读
- ruby-on-rails - 如何在一个视图中为一个模型创建多个表单
- python - 停止python中所有其他函数的函数
- json - 是否有任何用于动态键的嵌套 json 解析库?
- node.js - 为什么快递中间件不能在单独的文件中工作
- lucene - Lucene 7 得分与 Lucene 4
- android - 提取“.aab”文件时出错:dex 文件索引无效,需要文件“classes٢.dex”但找到“classes2.dex”
- asp.net - 发布 .NET Core 项目后无法访问错误
- python - 我需要在 Python 中使用 PWM 控制 2 个电机,用于树莓派 4。我使用 sys.argv [1]。PWM 必须在 while 循环内
- css - Tailwind CSS:如何在填充中使用自定义百分比?
- python - 存储更多元素然后随机选择特定数量的更好方法