【问题标题】:Grid.Resources and Style in Windows 8 app programmingWindows 8 应用程序编程中的 Grid.Resources 和 Style
【发布时间】:2014-05-07 12:31:28
【问题描述】:

我是 windows phone 8 编程的新手。我观看了 Channel 9 的名为 Windows Phone 8 Development for Absolute Beginners 的教程,现在我正在学习编写一些简单的代码。 任何人都可以在下面的示例代码中解释“样式”和“Grid.Resources”之间的关系吗?我认为这是一个内部标签,即。样式,是它的外部标签的属性,即。网格。但这在这里没有意义,因为外部标记 Grid.Resource 实际上是一个属性。

<Grid.Resources>
  <Style TargetType="Border">
      <Setter Property="BorderBrush" Value="Gold" />
      <Setter Property="BorderThickness" Value="2" />
      <Setter Property="Background" Value="Gray" />
      <Setter Property="Padding" Value="5" />
  </Style>
  <Style TargetType="TextBlock">
      <Setter Property="Foreground" Value="Black" />
  </Style>
</Grid.Resources>

任何帮助将不胜感激。

【问题讨论】:

  • “我怎么知道下面的标签是类还是属性”是什么意思
  • 抱歉,我不知道我在发帖时不能在单词周围使用“”。让我重新编辑一下。
  • 还是不明白。 StyleFrameworkElement 而不是 Resources 的属性。 Resources 是一个存储所有资源的字典。您是在问它如何知道要申请哪个Style?在这种情况下,您将为 BorderTextBlock 创建 2 个隐式 Styles,稍后将自动应用于这些类型的所有 Grid 的孩子,除非另有说明

标签: wpf xaml windows-phone-8 windows-phone windows-applications


【解决方案1】:

TargetType 引用 System.Windows.Controls.Border MSDN 这是一个类
Property 引用 Border 类的属性。
换句话说,样式只能基于一个类,但该类可以是其他类中的属性,如下所示:
列表视图->视图(GridView)
还有你的风格

<Style x:Key="sampleStyle" x:TargetType="GridView">
    <Setter Property="Background" Value="Red"/>
</Setter>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-04-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-04-03
    • 1970-01-01
    相关资源
    最近更新 更多