3

我有一个 Silverlight Datagrid,其中一列是日期列。

所以我使用了DataTemplateColumn如下

 <sdk:DataGridTemplateColumn   Header="Recieved Date" Width="Auto">
                        <sdk:DataGridTemplateColumn.CellTemplate>
                            <DataTemplate>
                                <TextBlock Text="{Binding Path=RecievedDate, StringFormat='MM/dd/yyyy'}" />
                            </DataTemplate>
                        </sdk:DataGridTemplateColumn.CellTemplate>
                        <sdk:DataGridTemplateColumn.CellEditingTemplate>
                            <DataTemplate>
                                <sdk:DatePicker Name="dtpFinancialAndComplianceLog" Text="{Binding Path=RecievedDate, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" />
                            </DataTemplate>
                        </sdk:DataGridTemplateColumn.CellEditingTemplate>
                    </sdk:DataGridTemplateColumn>

问题是当我单击DatePicker控件时,默认日期设置为 1/1/0001?

如何在编辑模式下将我的日期选择器设置为当前日期?

我试过 DisplayDateStart="{x:Static sys:DateTime.Now}" 。但这不起作用,因为 Static 仅适用于 WPF 而不适用于 Silverlight 。

在编辑时将我的日期选择器设置为当前日期的最佳方法是什么?

4

2 回答 2

2

(从上面的评论到OP)

如果省略 DisplayDate,Silverlight 日期选择器不会默认为今天的日期吗?

此外,如果您总是想从今天开始,您可以尝试更新绑定到 OneWay 的方向(即无需任何绑定代码来尝试设置框中的开始内容)

于 2012-12-03T14:29:39.550 回答
0

您可能需要通过在派生自 DatePicker 的 DatePickerEX 类的构造函数中分配当前日期来自定义 DatePicker 类

于 2012-12-26T15:58:44.730 回答