Ошибка: не удается найти свойство шаблона ‘Foreground’ для типа ‘System.Windows.Элементы управления.Сетка’

#wpf #xaml #tabcontrol

#wpf #xaml #tabcontrol

Вопрос:

Я пытаюсь добавить свойство ‘Foreground’ в триггер ControlTemplate элемента управления Tab :

                                 <ControlTemplate.Triggers>
                                    <Trigger Property="IsSelected" Value="True">
                                        <Setter TargetName="Panel" Property="Background" Value="LightSkyBlue" />
                                    </Trigger>
                                    <Trigger Property="IsSelected" Value="False">
                                        <Setter TargetName="Panel" Property="Background" Value="Gray" />
                                        <Setter  Property="Foreground" TargetName="Panel" Value="White"/>
                                    </Trigger>
                                </ControlTemplate.Triggers>
                            </ControlTemplate>
  

К сожалению, я получаю эту ошибку :

Ошибка Не удается найти свойство шаблона ‘Foreground’ для типа ‘System.Windows.Элементы управления.Сетка’.

Как я могу исправить эту ошибку?

Комментарии:

1. У Grid нет свойства Foreground.

2. Спасибо, но я исправил ошибку и опубликовал ответ 🙂

Ответ №1:

Я исправил ошибку, добавив :

  <Setter Property="TextElement.Foreground" TargetName="Panel" Value="White"></Setter>
  

Таким образом, полный код будет :

                   <ControlTemplate.Triggers>
                            <Trigger Property="IsSelected" Value="True">
                                <Setter TargetName="Panel" Property="Background" Value="LightSkyBlue" />
                            </Trigger>
                            <Trigger Property="IsSelected" Value="False">
                                <Setter TargetName="Panel" Property="Background" Value="Gray" />
 <Setter Property="TextElement.Foreground" TargetName="Panel" Value="White"/>

                            </Trigger>
                        </ControlTemplate.Triggers>
                    </ControlTemplate>