如何对XAML中父控件的子用户控件中的Label设置样式



我创建了一个名为REPORT的用户控件。我将此用户控件用作另一个名为MAIN的控件的子控件。我在XAML代码中将一些REPORT控件附加到MAIN。在REPORT中,有一些标签。我需要在XAML中定义REPORT的Label的Content属性。有些REPORT的标签必须包含字符串X,有些必须包含字符串Y。它取决于REPORT对象在我的MAIN XAML树中的位置。

我认为用风格来解决这个问题很方便。所以,我在MAIN XAML代码中写下了这个:

        <prest:REPORT>
            <prest:REPORT.Resources>
                <Style TargetType="Label" x:Key="style_x">
                    <Setter Property="Content" Value="X"/>
                </Style>
                <Style TargetType="Label" x:Key="style_y">
                    <Setter Property="Content" Value="Y"/>
                </Style>
            </prest:REPORT.Resources>
        </prest:REPORT>

但是,在REPORT XAML代码中,我无法访问style_x和style_y。

你能帮忙吗?谢谢

您需要为prest:REPORT 定义一个样式

类似的东西:

<Style x:Key="ReportStyleX" TargetType="{x:Type prest:REPORT}">
  <Style.Setter>
    <Setter Property="Template">
      <Setter.Value>
        <ControlTemplate>
          <Label Style="{StaticResource style_x}"/>

相关内容

  • 没有找到相关文章

最新更新