ControlTemplate - PullRequest
       3

ControlTemplate

0 голосов
/ 08 октября 2010

Я довольно новичок в WPF и имею основной вопрос: предположим, что в моем файле xaml есть следующее объявление xaml

<ContentControl x:Name="interactionActivityContent" Loaded="interactionActivityContent_Loaded">
<shapes:BaseShape.DragThumbTemplate >
    <ControlTemplate x:Name="interactionActivityTemplate">
        <Grid AllowDrop="True" x:Name="GridTest" >
            <Rectangle Name="Interaction" Fill="Yellow" Stroke="Green" StrokeThickness="2" IsHitTestVisible="True" AllowDrop="True"></Rectangle>
            <local:DesignerCanvas x:Name="ActivitiesCanvasArea" Margin="1,1,1,1" IsHitTestVisible="True" AllowDrop="True" Background="Blue"></local:DesignerCanvas>
        </Grid>
    </ControlTemplate>
</shapes:BaseShape.DragThumbTemplate>


* формы: BaseShape.DragThumbTemplateисходя из какого-то другого класса.* DesignerCanvas - это мой собственный холст, для которого я хочу установить значение во время выполнения.Как я могу получить доступ к ActivityCanvasArea в моем коде C # из кода, стоящего за файлом?Нужно ли мне изменить способ объявления xaml.Мне нужно применить DragThumbTemplate к моей сетке, чтобы я мог перемещаться по сетке на главном экране.

1 Ответ

0 голосов
/ 09 октября 2010

С http://blogs.msdn.com/b/wpfsdk/archive/2007/03/16/how-do-i-programmatically-interact-with-template-generated-elements-part-i.aspx

Если вам нужно найти именованный элемент в ControlTemplate myButton1, например Grid, вы можете использовать Template.FindName следующим образом:

// Нахождениесетка, сгенерированная ControlTemplate сетки кнопок gridInTemplate = (Grid) myButton1.Template.FindName ("grid", myButton1);

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...