У меня есть несколько случаев, когда у меня есть свойство, которое я хочу объявить только для чтения, но также даю некоторые объяснения того, как оно рассчитывается / устанавливается с помощью атрибута [Display (Description = "")]. Я хотел бы сделать это в метаданных, если это возможно, вместо переопределения в самой форме данных.
Вот пример:
[Display(Description = "Total number of travel hours, calculated as total hrs worked - actual working hrs this month")]
public decimal TravelHours
{
get
{
return this.TotalHrsWorked - this.ActualWorkedHours;
}
}
Это описание не будет отображаться как DescriptionViewer при привязке к этому свойству в DataForm & DataField.
Кажется, что когда я устанавливаю атрибут [ReadOnly], он скрывает DescriptionViewer, и даже настройка DescriptionViewerVisibility = Visible в форме данных xaml все равно не меняет его. Кроме того, любые вычисляемые свойства (без установщика), по-видимому, имеют этот атрибут по умолчанию. Это немного раздражает, потому что это те, для которых я действительно хочу показать зрителя описания.
Единственный способ обойти это, как я обнаружил, это сделать свойство не только для чтения и добавить фиктивный установщик (для вычисляемых свойств). Это похоже на клудж.
Есть ли способ показать средство просмотра формы данных / поля данных для свойств только для чтения?