2013-07-02 125 views
1

我想只是返回的日期(無時間),但我已經嘗試了一切,它總是返回XAML日期選擇器只返回日期,但沒有時間

7/23/2013 12:00:00 AM 

但我只想

7/23/2013 

這是我的代碼,它需要在純XAML中完成。

  <DatePicker SelectedDate="{Binding myDateProperty}" Height="30" HorizontalAlignment="Left" Margin="0,1,5,1" Name="ObsoleteDate" VerticalAlignment="Top" Width="110"> 
      <DatePicker.Resources> 
       <Style TargetType="{x:Type DatePickerTextBox}"> 
       <Setter Property="Control.Template"> 
        <Setter.Value> 
         <ControlTemplate> 
          <TextBox x:Name="PART_TextBox" Text="{Binding Path=SelectedDate, RelativeSource={RelativeSource AncestorType={x:Type DatePicker}}, StringFormat={}{0:dd/MM/yyyy}}"/> 
         </ControlTemplate> 
        </Setter.Value> 
       </Setter> 
       </Style> 
      </DatePicker.Resources> 
     </DatePicker> 
+0

你想在哪裏約會?在用戶界面或在你的viewmodel?你有沒有嘗試SelectedDateFormat? – blindmeis

+0

在視圖模型中。嘗試SelectedDateFormat =「短」,但結果相同。 – munchine

+2

「12:00:00」是默認值,如果您不關心時間,則可以使用日期部分:http://msdn.microsoft.com/zh-cn/library/system.datetime。 date.aspx –

回答

1

使用StringFormat=d代替StringFormat={}{0:dd/MM/yyyy}}

0

我用下面的代碼,它爲我工作。(ObsoleteDate是你DatePicker的名稱)

ObsoleteDate.SelectedDate.Value.Date.ToShortDateString() 
0
<TextBox Background="#fff" x:Name="PART_TextBox" Text="{Binding Path=SelectedDate, 
RelativeSource={RelativeSource AncestorType={x:Type DatePicker}}, StringFormat=d}" /> 

爲我工作

相關問題