Доступ к Grid внутри ControlTemplate - PullRequest
0 голосов
/ 13 декабря 2018

У меня есть ControlTemplate с сеткой внутри.Но я не могу найти какой-либо способ доступа к этой сетке в элементах управления, которые содержат мой шаблон: (

<Window.Resources>
    <ControlTemplate TargetType="ContentControl" x:Key="CertificatesTable">
        <Grid Margin="5">
            ...
        </Grid>
    </ControlTemplate>
</Window.Resources>
...
<Border Grid.Row="2" Grid.ColumnSpan="100" BorderThickness="1,0,1,1" BorderBrush="#99000000">
    <ContentControl Name="Certificates1" Template="{StaticResource CertificatesTable}"/>
</Border>
<Border Grid.Row="4" Grid.ColumnSpan="100" BorderThickness="1,0,1,1" BorderBrush="#99000000">
    <ContentControl Name="Certificates2" Template="{StaticResource CertificatesTable}"/>
</Border>
<Border Grid.Row="6" Grid.ColumnSpan="100" BorderThickness="1,0,1,1" BorderBrush="#99000000">
    <ContentControl Name="Certificates3" Template="{StaticResource CertificatesTable}"/>
</Border>
...

1 Ответ

0 голосов
/ 13 декабря 2018

Помах добро пожаловать в переполнение стека.

Вот простой код, как получить или получить информацию о сетке на стороне кода.

<Window.Resources>
    <ControlTemplate x:Name="myControl" TargetType="ContentControl" x:Key="CertificatesTable">
        <Grid Margin="5" x:Name="grv">
            ...
        </Grid>
    </ControlTemplate>
</Window.Resources>

C # Код для доступа к деталям сетки -

ar template = myControl.Template;
var myControl = (Grid)template.FindName("grv", myControl);
...