0

我一直在钻研 XAML 并试图一起弄清楚它是如何工作的。

我从我下载的一个示例代码中获得了以下 XAML,一个较早的问题已经解释了我的大部分困惑,但是......我仍然试图理解为什么以下元素有一个引用另一个元素的子元素完全键入。

<Border HorizontalAlignment="Stretch" VerticalAlignment="Stretch" >

    <VisualStateManager.VisualStateGroups>
        <!-- Snipped code irrelevant - just various storyboards-->
    </VisualStateManager.VisualStateGroups>
        <Grid x:Name="InnerGrid" 
              Opacity="1"
              Margin="0,5,0,5" 
              Background="{StaticResource TransparentColor}">
                  <ContentPresenter x:Name="ContentPresenter"  
                        Foreground="{StaticResource TransparentColor}"
                        ContentTemplate="{TemplateBinding ContentTemplate}" 
                        Content="{TemplateBinding Content}" 
                        HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" 
                        Margin="{TemplateBinding Padding}" 
                        VerticalAlignment="{TemplateBinding VerticalContentAlignment}"/>
       </Grid>
</Border>

查看 XAML 语法文档,它VisualStateManager是一个PropertyElement,但是我很困惑,因为 VisualStateGroups 似乎不是Border. 我相信这个例子是正确的,但是,我需要有人向我解释,一个不是“正确”Child元素(因为那是什么Grid)的元素如何成为父元素的合法部分?

4

1 回答 1

1

VisualStateManager.VisualStateGroups 是附加属性。阅读以下主题,它可能会对您有所帮助:http: //msdn.microsoft.com/en-us/library/ms749011.aspx

于 2013-06-27T08:18:33.057 回答