将SilverLight日期选取器的默认日期设置为当前日期

时间:2012-12-03 13:45:22

标签: c# .net silverlight date datepicker

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

所以我使用了DataTemplateColumn作为Follows

 <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。

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

2 个答案:

答案 0 :(得分:2)

(从以上评论到OP)

如果省略DisplayDate,Silverlight datepicker默认为今天的日期?

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

答案 1 :(得分:0)

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