2011-06-05 5 views
1

Я выполнил инструкцию в this blog, чтобы добавить ScrollIntoView в ItemsControl.WPF: граница ItemsControl не отображается

Но это делает границу невидимое:

<ItemsControl BorderBrush="Black" 
       BorderThickness="3"> 
    <ItemsControl.Template> 
     <ControlTemplate> 
      <ScrollViewer Padding="{TemplateBinding Padding}"> 
       <ItemsPresenter /> 
      </ScrollViewer> 
     </ControlTemplate> 
    </ItemsControl.Template> 
    <TextBlock Text="Test" /> 
    <TextBlock Text="Test" /> 
    <TextBlock Text="Test" /> 
</ItemsControl> 

Для того, чтобы отобразить границу, я должен удалить:

<ItemsControl.Template> 
    <ControlTemplate> 
     <ScrollViewer Padding="{TemplateBinding Padding}"> 
      <ItemsPresenter /> 
     </ScrollViewer> 
    </ControlTemplate> 
</ItemsControl.Template> 

Но этот путь не будет в состоянии использовать ScrollIntoView метод.

Любые идеи? Спасибо

ответ

5

Вам нужно указать границу в шаблоне.

   <ControlTemplate> 
        <Border Background="{TemplateBinding Background}" 
         BorderBrush="{TemplateBinding BorderBrush}" 
         BorderThickness="{TemplateBinding BorderThickness}"> 
         <ScrollViewer Padding="{TemplateBinding Padding}"> 
          <ItemsPresenter /> 

         </ScrollViewer> 
        </Border> 
       </ControlTemplate> 
+0

Спасибо, что работает! –

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