访问ControlTemplate组件(Windows 8应用程序)

时间:2012-11-05 13:31:27

标签: wpf templates controls

我想将一些UI元素组合到一个Control中,然后通过代码访问它们。但是我无法弄明白。 控制模板:

<Page.Resources>
    <Style x:Key="GridViewStyle1" TargetType="GridView">
        <Setter Property="Template">
            <Setter.Value>
                <ControlTemplate TargetType="GridView">
                    <Grid>                      
                        <TextBox x:Name="theTextBox" Text="The Text" />                         
                    </Grid>
                </ControlTemplate>
            </Setter.Value>
        </Setter>
    </Style>
</Page.Resources>

对模板的引用:

<GridView x:Name="myGridView1" Style="{StaticResource TileControl}"/>

所以我正在寻找的是这样的东西,例如:

myGridView1.Style.Template.Gridview.theTextBox.Text

但我找不到它。知道我怎么能这样做吗?或者我可能走错了路,因为它不应该那么复杂?

1 个答案:

答案 0 :(得分:0)

要检索ControlTemplate生成的元素,您可以使用类似的内容(在模板应用于控件之后)

yourcontrol.Template.FindName("ControlElementTemplateToFind")

另见msdn