2015-06-22 35 views
1

我想給CalendarDatePicker的日期屬性與在Windows 10通用的應用一個DateTime屬性綁定:XamlParseException試圖綁定的Windows 10日期CalendarDatePicker

<CalendarDatePicker 
    Date="{Binding ClientDetailsViewModel.BirthDate, 
    Converter={StaticResource DateTimeToDateTimeOffsetConverter} }" 
    Foreground="{StaticResource TextGreyBrush}" /> 

我收到以下異常而圖初始化:

類型的異常「Windows.UI.Xaml.Markup.XamlParseException」 發生KLMMobile.UI.exe但在用戶代碼中沒有處理

WinRT的信息:無法分配財產 'Windows.UI.Xaml.Controls.CalendarDatePicker.Date'。 [行:93 位置:41]

我與的DatePicker測試,它完美地工作。

+1

CalendarDatePicker.Date是'Nullable '而DatePicker.Date是'DateTimeOffset'。它不應該的問題,一般,但結合時比較類型時綁定可以不考慮隱含的鑄造性(或東西:/)。更改DateTimeToDateTimeOffsetConverter返回一個可空的DateTimeOffset,或創建一個新的版本,那麼,看看是否有幫助。 – Will

+0

我試過了,但沒有奏效。實際上它沒有到達轉換器。其實即使我設置回代碼日期TestCalendarDatePicker.Date = DateTimeOffset.Now;它不工作 – Stam

回答

0

經過大量的努力,試圖將日期進行綁定,我通過使用DateChanged觸發,並應在開始時顯示的屬性結合的PlaceHolderText克服了這個問題。

<CalendarDatePicker 
       PlaceholderText="{Binding UpdateWorkingTimeModel.StartTime, Converter={StaticResource TicksToDateTimeConverter}, ConverterParameter='dd.MM.yyyy', Mode=TwoWay}"> 
        <interactivity:Interaction.Triggers> 
         <interactivity:EventTrigger EventName="DateChanged"> 
          <interactivity:InvokeCommandAction Command="{Binding DatePickedCommand}"/> 
         </interactivity:EventTrigger> 
        </interactivity:Interaction.Triggers> 
       </CalendarDatePicker>