Как переместить ресурсы сетки в файл темы (UWP) - PullRequest
1 голос
/ 14 апреля 2020

У меня есть такая решетка

                <Grid>
                    <Grid.Resources>
                        <Style TargetType="TextBlock">
                            <Setter Property="FontSize" Value="12px"/>
                            <Setter Property="FontWeight" Value="SemiBold"/>
                            <Setter Property="FontStretch" Value="Normal"/>
                            <Setter Property="FontStyle" Value="Normal"/>
                            <Setter Property="Foreground" Value="#5D58F7"/>
                        </Style>
                    </Grid.Resources>
                    <uctrl:sr ></uctrl:sr>
                </Grid>

, которая работает нормально. Теперь я хочу переместить эти стили в мой файл темы. Чтобы добиться этого, я сделал что-то вроде этого.

Внутри theme.xaml

    <Style x:Key="mystyleinsidethemefile" TargetType="TextBlock">
    <Setter Property="FontSize" Value="12px"/>
    <Setter Property="FontWeight" Value="SemiBold"/>
    <Setter Property="FontStretch" Value="Normal"/>
    <Setter Property="FontStyle" Value="Normal"/>
    <Setter Property="Foreground" Value="#5D58F7"/>
   </Style>

Внутри моей страницы

                    <Grid Height="36" >
                    <Grid.Resources>
                        <Style TargetType="TextBlock">
                            <Setter Property="Style" Value="{StaticResource mystyleinsidethemefile}"/>
                        </Style>
                    </Grid.Resources>
                    <uctrl:sr ></uctrl:sr>
                </Grid>

все выглядит хорошо для меня, но это бросает ошибка, как показано на рис. enter image description here

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

1 Ответ

2 голосов
/ 15 апреля 2020

Минимальный ответ

Установка mystyleinsthethefile в Style.BasedOn, возможно, вы сможете заставить его работать.

<Grid Height="36">
    <Grid.Resources>
        <Style TargetType="TextBlock" BasedOn="{StaticResource mystyleinsidethemefile}">

        </Style>
    </Grid.Resources>
    <uctrl:sr ></uctrl:sr>
</Grid>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...