Я обнаружил проблему с ресурсами в файле App.xaml приложения Microsoft PRISM (Prism.Wpf 7.2 и Prism.Unity 7.2) WPF MVVM (. NET Framework 4.7.2 или Do tnet Core 3.1) , Если App.xaml
включает в себя только определенные типы (не сейчас, какие именно), такие как BooleanToVisibilityConverter
в качестве ресурса:
<unity:PrismApplication x:Class="WPF_XAML_Resource_Test.App"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:unity="http://prismlibrary.com/">
<Application.Resources>
<BooleanToVisibilityConverter x:Key="BooleanToVisibilityConverter"/>
</Application.Resources>
Дизайнер не жалуется при включении ресурса в указанный ключ:
<Button ... Visibility="{Binding DeleteButtonIsVisible, Converter={StaticResource BooleanToVisibilityConverter}, Mode=OneWay}">
Но когда я запускаю приложение, я получаю сообщение об ошибке «Исключение: не удается найти ресурс с именем« BooleanToVisibilityConverter ». Имена ресурсов чувствительны к регистру».
Взлом, чтобы включить какой-то другой тип, например SolidColorBrush
в App.xaml
:
<SolidColorBrush x:Key="Dummy" Color="Red"/>
Тогда исключение не выдается.
Может кто-нибудь объяснить, почему я получаю исключение, если я не включаю пустышку SolidColorBrush
ресурс?