Guillaume André

Apprentissage, étude et approfondissement des nouvelles technologies

16 Apr, 2009

Surface : Personnaliser le contrôle ScatterView

Posted by: Guillaume Andre In: Surface

Le contrôle Scatterview de Surface permet de manipuler des éléments WPF ou Surface dans une zone qui lui est propre. Ainsi chaque enfant d’un Scatterview est manipulable et étirable à souhait pour autant que le développeur ai décidé de vous laisser cette possibilité. Il s’agit ni plus ni moins que du contrôle phare de la plateforme Surface.

En pratique, le contrôle Scatterview Surface propose comme tout contrôle WPF ou Surface un style par défaut. Nous allons voir comment le mettre à nu pour pouvoir profiter de la transparence du fond (background) des enfants : les ScatterViewItem.


View on Vimeo.

En redéfinissant le template d’un ScatterViewItem cela supprime tous les styles par défaut. Voyons comment appliquer cela aux enfants du ScatterView via XAML.

<s:ScatterView>
     <s:ScatterView.ItemContainerStyle>
          <Style TargetType=”{x:Type s:ScatterViewItem}”>
               <Setter Property=”Template”>
                    <Setter.Value>
                         <ControlTemplate TargetType=”{x:Type s:ScatterViewItem}”>
                              <ContentPresenter HorizontalAlignment=”{TemplateBinding HorizontalContentAlignment}” VerticalAlignment=”{TemplateBinding VerticalContentAlignment}” SnapsToDevicePixels=”{TemplateBinding SnapsToDevicePixels}”/>
                         </ControlTemplate>
                     </Setter.Value>
                 </Setter>
             </Style>
        </s:ScatterView.ItemContainerStyle>
     <s:ScatterViewItem />
     <s:ScatterViewItem />
     <s:ScatterViewItem />
</s:ScatterView>

A présent voyons comment interdire la rotation d’un ScatterViewItem

<s:ScatterViewItem CanRotate=”False” />

Il en est de même pour la fonctionnalité de “redimensionnement”

<s:ScatterViewItem CanScale=”False” />

No Responses to "Surface : Personnaliser le contrôle ScatterView"

Comment Form