Вы правы, это не обязательно должно быть свойство, хотя без RaisingProperty пользовательский интерфейс не будет знать об изменении. Но проблема с конвертером, а не с этим.

я есть класс модели в общем PCL (для приложений Android и UWP), которые содержат свойство datetime:

public class Meter {
        public int meter_value {get; set; }    
        public DateTime meter_start { get; set; }
        public DateTime meter_end { get; set; }
... other int and string properties
}

В MainPage.cs у меня есть

public Meter _meter;
public MainPage()
{
    this.InitializeComponent();
    _meter = new Meter();
}

Я пытаюсь связать это с элементами управления xaml с помощью следующего кода:

   <TextBox 
      Text="{x:Bind _meter.meter_value, Mode=TwoWay}">

   <CalendarDatePicker 
     Name="meter_start"
      Date="{x:Bind _meter.meter_start, Mode=TwoWay}"
      DateFormat="{}{day.integer}/{month.integer}/{year.full}" >
   </CalendarDatePicker>

Этот код производит ошибку времени компиляции:Invalid binding path '_meter.meter_start' : Cannot bind type 'System.DateTime' to 'System.Nullable(System.DateTimeOffset)' without a converter

Когда я изменяю x: Bind to Binding, приложение компилируется, но значение свойства meter_start в моей модели равно 0001/01/01.

Может кто-нибудь помочь мне, как решить эту проблему?

Ответы на вопрос(1)

Ваш ответ на вопрос