c# - WPF:将 DataGrid FallBackValue 设置为今天的日期
问题描述
WPF DataGridItemSource
与ObservableCollection
[Date] 单元格绑定到DateTime Date
集合的每个对象中的属性。该Date
属性已经默认为,DateTime.Now
因此该值已经在基础属性中:
public DateTime Date { get; set; } = DateTime.Now;
单击单元格后,会出现 [Date] 值,并且 DatePicker 正确突出显示当前日期。
但我希望 DataGrid 中的新行默认自动显示当前日期,这样用户在接受默认的当前日期时甚至不必触摸该字段。如图和 XAML 所示,我成功地使用FallBackValue='N'
了 [Cl] 和FallBackValue='$0.00'
[Amount]。但是,我尝试FallbackValue={x:Static sys:DateTime.Now}
了 [Date] 但它仍然是空的。
...
xmlns:sys="clr-namespace:System;assembly=mscorlib"
...
<DataGrid Visibility="{Binding BankDataGridVisibility}" ItemsSource="{Binding BankTransactions}" AutoGenerateColumns="False" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Margin="10,50,10,10" RowHeaderWidth ="0" >
<DataGrid.Columns>
...
<DataGridTemplateColumn Header="Date" Width="100" >
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<TextBlock Text="{Binding Date, FallbackValue={x:Static sys:DateTime.Now}, StringFormat=\{0:MM/dd/yyyy\}}" />
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
<DataGridTemplateColumn.CellEditingTemplate>
<DataTemplate>
<DatePicker SelectedDate="{Binding Date}" />
</DataTemplate>
</DataGridTemplateColumn.CellEditingTemplate>
</DataGridTemplateColumn>
...
</DataGrid.Columns>
解决方案
推荐阅读
- java - Eclipse 在导入项目时抛出 Gradle 错误
- json - 在谷歌浏览器主题 manifest.json 中更改多功能框中的突出显示颜色
- r - 如果 A 列和 B 列在 C 列中有多个对应值,则删除行
- python - 从列表中抓取后无法操作字符串
- asp.net - 获取 json 文件时遇到的错误
- typescript - 如何在带有 Typescript 的视图中使用 Vue 单文件组件?
- excel - Firebase Cloud Function上传excel文件解析数据并保存到Firestore
- c# - 将嵌套集合转换为平面数据表
- r - 如何使带有传单地图的 rpubs 输出全屏?
- ios - 在 Pending Developer Release 中,应用内购买的行为如何?