Я использую двухстороннюю привязку WPF для свойства CLR, которое реализует INotifyPropertyChanged. set
для объекта: internal
, а get
- public
.WPF двусторонняя привязка с внутренним установщиком
К сожалению, я получаю следующее сообщение об ошибке:
System.Windows.Markup.XamlParseException was unhandled Message: An unhandled exception of type 'System.Windows.Markup.XamlParseException' occurred in PresentationFramework.dll Additional information: A TwoWay or OneWayToSource binding cannot work on the read-only property 'Name' of type 'MyType'.
Является ли это ожидаемое поведение? Я бы подумал, что внутренние сеттеры должны работать нормально ... Обратите внимание, что CLR-тип определен в другой сборке и отображается в текущей сборке с атрибутом [assembly: InternalsVisibleTo("MyAssembly")]
.
У кого-нибудь есть обходные пути/предложения? Объявляющая сборка - это библиотека классов, поэтому мне не нужно менять set
на public
.
я нашел следующий вопрос на SO: http://stackoverflow.com/questions/ 4106721/internalsvisibleto-is-not-working-for-wpf-application? Rq = 1 Это оставляет мне без особых надежд - видимо, WPF не заботится об атрибуте «InternalsVisibleTo». Если у кого-то есть обходные пути, я все равно хотел бы знать. – Omaer