Bibliothèque de classes .NET Framework
UIElement..::.RenderTransformOrigin, propriété

Mise à jour : novembre 2007

Obtient ou définit le point central de toute transformation de rendu possible déclarée par RenderTransform, relative aux limites de l'élément. Il s'agit d'une propriété de dépendance.

Espace de noms :  System.Windows
Assembly :  PresentationCore (dans PresentationCore.dll)
XMLNS pour XAML : http://schemas.microsoft.com/winfx/xaml/presentation

Syntaxe

Visual Basic (Déclaration)
Public Property RenderTransformOrigin As Point
Visual Basic (Utilisation)
Dim instance As UIElement
Dim value As Point

value = instance.RenderTransformOrigin

instance.RenderTransformOrigin = value
C#
public Point RenderTransformOrigin { get; set; }
VisualC++
public:
property Point RenderTransformOrigin {
    Point get ();
    void set (Point value);
}
J#
/** @property */
public Point get_RenderTransformOrigin()
/** @property */
public  void set_RenderTransformOrigin(Point value)
JScript
public function get RenderTransformOrigin () : Point
public function set RenderTransformOrigin (value : Point)
Utilisation des éléments de propriété XAML
<object>
  <object.RenderTransformOrigin>
    <Point X="xOrigin" Y="yOrigin"/>
  </object.RenderTransformOrigin>
</object>
Utilisation des attributs XAML
<object RenderTransformOrigin="xOrigin, yOrigin"/>
Valeurs XAML
xOrigin

Facteur d'origine horizontal. Il est généralement donné sous forme de valeur comprise entre 0 et 1. Consultez le paragraphe Notes.

yOrigin

Facteur d'origine vertical. Il est généralement donné sous forme de valeur comprise entre 0 et 1. Consultez le paragraphe Notes.

Valeur de propriété

Type : System.Windows..::.Point

Valeur qui déclare la transformation de rendu. La valeur par défaut est un Point caractérisé par les coordonnées (0,0).

Informations sur les propriétés de dépendance

Champ d'identificateur

RenderTransformOriginProperty

Propriétés de métadonnées ayant la valeur true

Aucune

Notes

RenderTransformOrigin présente une utilisation quelque peu non standard de la valeur de structure de Point, dans le sens où Point ne représente pas un emplacement absolu dans un système de coordonnées. Les valeurs entre 0 et 1 sont en fait interprétées comme un facteur pour la plage de l'élément actif, sur les axes X et Y. Par exemple, (0.5,0.5) entraîne le centrage de la transformation de rendu sur l'élément ; (1,1) place la transformation au coin inférieur droit de l'élément. NaN n'est pas une valeur acceptée.

Les valeurs au delà de 0 et 1 sont également acceptées mais entraînent des effets de transformation plus inhabituels. Par exemple, si vous affectez (5,5) à RenderTransformOrigin, puis appliquez RotateTransform, le point de rotation se trouve alors vraiment en dehors des limites de l'élément même. La transformation fait ainsi tourner votre élément en suivant un grand cercle dont l'origine se situe au delà du point droit inférieur. Cette origine peut se trouver quelque part à l'intérieur de son élément parent, voire en dehors de l'image ou de la zone d'affichage. Les valeurs de points négatives sont semblables et se placent au delà des limites supérieures gauches.

Les transformations de rendu n'affectent pas la disposition et sont en général utilisées pour animer ou appliquer un effet temporaire à un élément.

Exemples

L'exemple suivant génère des éléments par code, applique RenderTransformOrigin, puis RenderTransform.

C#
public RotateAboutCenterExample()
{
    this.WindowTitle = "Rotate About Center Example";
    NameScope.SetNameScope(this, new NameScope());
    StackPanel myStackPanel = new StackPanel();
    myStackPanel.Margin = new Thickness(50);

    Button myButton = new Button();
    myButton.Name = "myRenderTransformButton";
    this.RegisterName(myButton.Name,myButton);
    myButton.RenderTransformOrigin = new Point(0.5,0.5);
    myButton.HorizontalAlignment = HorizontalAlignment.Left;
    myButton.Content = "Hello World";


    RotateTransform myRotateTransform = new RotateTransform(0);
    myButton.RenderTransform = myRotateTransform;
    this.RegisterName("MyAnimatedTransform",myRotateTransform);

    myStackPanel.Children.Add(myButton);

    //
    // Creates an animation that accelerates through 40% of its duration and
    //      decelerates through the 60% of its duration.
    //
    DoubleAnimation myRotateAboutCenterAnimation = new DoubleAnimation();
    Storyboard.SetTargetName(myRotateAboutCenterAnimation,"MyAnimatedTransform");
    Storyboard.SetTargetProperty(myRotateAboutCenterAnimation,new PropertyPath(RotateTransform.AngleProperty));
    myRotateAboutCenterAnimation.From = 0.0;
    myRotateAboutCenterAnimation.To = 360;
    myRotateAboutCenterAnimation.Duration = new Duration(TimeSpan.FromMilliseconds(1000));

    // Create a Storyboard to contain the animations and
    // add the animations to the Storyboard.
    Storyboard myStoryboard = new Storyboard();
    myStoryboard.Children.Add(myRotateAboutCenterAnimation);

    // Create an EventTrigger and a BeginStoryboard action to
    // start the storyboard.
    EventTrigger myEventTrigger = new EventTrigger();
    myEventTrigger.RoutedEvent = Button.ClickEvent;
    myEventTrigger.SourceName = myButton.Name;
    BeginStoryboard myBeginStoryboard = new BeginStoryboard();
    myBeginStoryboard.Storyboard = myStoryboard;
    myEventTrigger.Actions.Add(myBeginStoryboard);
    myStackPanel.Triggers.Add(myEventTrigger);

    this.Content = myStackPanel;
}
Plateformes

Windows Vista

Le .NET Framework et le .NET Compact Framework ne prennent pas en charge toutes les versions de chaque plateforme. Pour obtenir la liste des versions prises en charge, consultez Configuration requise du .NET Framework.

Informations de version

.NET Framework

Pris en charge dans : 3.5, 3.0
Voir aussi

Référence

Autres ressources

Mots clés :


Page view tracker