#c_sharp #wpf #toolbar
У меня есть следующий xaml:and two classes as possible data context - for two different windows. class ToolbarContextOne { public Visibility SomeProperty {get;set;} } class ToolbarContextTwo:ToolbarContextOne { public bool IsEnabled {get;set;} } Я использую тулбар из примера в нескольких ситуациях. Для того, чтобы показывать различные данные в разных окнах, я использую разные дата контексты. Когда мне не нужна вышеупомянутая секция, я просто ставлю SomeProperty в Visibility.Collapsed. Но всё равно получаю binding error для свойства IsEnabled. Очевидно, парсер пытается выполнить все binding expressions. Есть способ заставить его не выполнять эти выражения в скрытой секции xaml?
Ответы
Ответ 1
Наверное, более чистый путь через DataTemplate. Положите где-нибудь в ресурсы (например, глобальные, или локально в окно, или в UserControl) такое:Ну и в том месте, где у вас был ToolbarTray, просто При этом ContentPresenter найдёт нужный DataTemplate и использует его.
Комментариев нет:
Отправить комментарий