2015-05-08 3 views
1

простой вопрос!Представляя товарControl

Я хочу представить элементы управления внутри расширителя и сетки, которая содержит текстовое поле. Я хочу сделать это несколько раз, поэтому я завернул его в ControlTemplate.

<ControlTemplate x:Key="ArrayPresenter"> 
    <Expander Template="{StaticResource ArrayTemplate}"> 
     <Grid> 
      <ContentPresenter/> 
      <TextBlock FontWeight="Bold" Text="Empty" Margin="3" HorizontalAlignment="Center" Foreground="#66C9C9C9" FontSize="15" Visibility="{quickConverter:Binding '$P.Count == 0 ? Visibility.Visible : Visibility.Collapsed', P={Binding Array}}" /> 
     </Grid> 
    </Expander> 
</ControlTemplate> 

Это то, что я хочу представить. К сожалению, всякий раз, когда элемент добавляется в элементcontrol, ничего не происходит, и он не отображает новые элементы!

<ContentControl Template="{StaticResource ArrayPresenter}"> 
     <ItemsControl Style="{StaticResource ArrayItemsStyle}" Margin="5" ItemTemplate="{StaticResource StructureFieldTemplate}"/> 
    </ContentControl> 
+1

Пробовал ли вы использовать таргетинг типа 'ControlTemplate' как' '? – dkozl

+0

Ничего себе это было так просто - должно быть, пора вернуться домой. Спасибо – Asheh

ответ

1

Как уже говорилось в комментарии вы должны быть ориентированы на тип вашего ControlTemplate

<ControlTemplate ... TargetType="{x:Type ContentControl}"> 

Без этого ControlTemplate мишеней System.Windows.Controls.Control типа и не имеет Content представить так ContentPresenter не знает, что показать.

+0

Спасибо за ваш быстрый ответ :). – Asheh

Смежные вопросы