1

我是 windows phone 8 的新手,我想知道 windows 8 phone 中是否有任何可重复使用的样式 xaml 功能。例如,我创建了两个具有两个不同唯一键的样式 xaml 标签。那么我将如何将这些样式应用于仅一个元素(比如一个文本框)。

你能推荐一些最好的风格指南网站和书籍吗,在此先感谢

4

1 回答 1

1

首先,您可以在多个地方定义您的样式:

  • 将在其中使用它的 xaml 文件 - 在父元素的 Resource 中。
  • App.xaml 文件 - 在 Application.Resources 元素中。
  • 样式的专用 xaml 文件 - 然后可以使用ResourceDictionaryResourceDictionary.MergedDictionaries元素在 App.xaml 中引用它。

无论您决定将样式放在哪里,它都需要位于Resource元素中。如果您希望您的样式是全局的,App.xaml 是一个不错的选择,例如

<Application.Resources>
    <Style x:Key="TextBoxStyle2" TargetType="TextBox">
        <Setter Property="Background" Value="CornflowerBlue" />
    </Style>
    ...
</Application.Resources>

然后可以将此样式作为静态资源引用,如下所示:

<StackPanel Orientation="Vertical">
    <TextBox Text="Default Style" />
    <TextBox Text="Custom Style" Style="{StaticResource TextBoxStyle1}" />
</StackPanel>

您可以非常喜欢您的样式并在它们自己的 xaml 文件中定义它们并在 App.xaml 中引用它们,如下所示:

<Application.Resources>
    <ResourceDictionary x:Key="Styles">
        <ResourceDictionary.MergedDictionaries>
            <ResourceDictionary Source="Colors.xaml"/>
            <ResourceDictionary Source="Styles.xaml"/>
            ...
        </ResourceDictionary.MergedDictionaries>
    </ResourceDictionary>
</Application.Resources>

这可能是组织样式的一种非常有用的方法。

于 2013-07-08T19:03:00.920 回答