У меня в приложении куча красных кнопок, поэтому вместо определения стилей для этого я поместил это в свой App.xaml
<Application.Resources>
<Style x:Key="RedButton" TargetType="{x:Type Button}">
<Setter Property="Background" Value="#FF830722" />
<Setter Property="Foreground" Value="White" />
<Setter Property="FontWeight" Value="Bold" />
<Style.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter Property="Background" Value="Red" />
</Trigger>
</Style.Triggers>
</Style>
</Application.Resources>
Мне нужно отключить определенные красные кнопки в приложениичерез привязку данных.Похоже, что он отображается правильно в режиме конструктора.
<Button Style="{StaticResource RedButton}" Content="Search" Height="23" HorizontalAlignment="Left" Margin="449,13,0,0" Name="searchButton" VerticalAlignment="Top" Width="75" Click="searchButton_Click" />
<Button Content="Add Item(s)" Margin="0,0,12,12" Name="addProductButton" Height="23" VerticalAlignment="Bottom" HorizontalAlignment="Right" Width="108" Click="addProductButton_Click">
<Button.Style>
<Style TargetType="{x:Type Button}" BasedOn="{StaticResource RedButton}">
<Style.Triggers>
<DataTrigger Binding="{Binding ElementName=searchDataGrid, Path=SelectedIndex}" Value="-1">
<Setter Property="IsEnabled" Value="False" />
</DataTrigger>
</Style.Triggers>
</Style>
</Button.Style>
</Button>
Когда я запускаю приложение, я получаю следующее сообщение об ошибке:
'Укажите значение для метки' System.Windows.StaticResourceExtension 'исключение.'Номер строки '25' и позиция строки '140'.
Я предполагаю, что у него есть проблемы с поиском StaticResource.Нужно ли добавлять xmlns?
Редактировать: Это приложение Prism, имеющее 3 основных проекта.
- Оболочка - содержит ссылкудля OrderModule и инфраструктуры
- OrderModule - содержит ссылку на инфраструктуру
- Инфраструктура
UserControl с кнопкой, которую я пытаюсь выполнитьиспользовать стиль включен в проекте OrderModule. Я собираюсь попытаться создать словарь ресурсов в проекте инфраструктуры и интегрировать его с App.xaml (что-то вроде удара в темноте)
Ошибка на первой кнопке, которая не использует BasedOn.InnerException -
Не удается найти ресурс с именем RedButton.Имена ресурсов чувствительны к регистру.