Cet article a fait l'objet d'une traduction automatique. Déplacez votre pointeur sur les phrases de l'article pour voir la version originale de ce texte. Informations supplémentaires.
Traduction
Source
Ce sujet n'a pas encore été évalué - Évaluez ce sujet

TransformGroup, classe

Représente un Transform composite composé d'autres objets Transform.

Espace de noms :  System.Windows.Media
Assembly :  PresentationCore (dans PresentationCore.dll)
XMLNS pour XAML : http://schemas.microsoft.com/winfx/2006/xaml/presentation, http://schemas.microsoft.com/netfx/2007/xaml/presentation
[ContentPropertyAttribute("Children")]
public sealed class TransformGroup : Transform
<TransformGroup>
  Children
</TransformGroup>

Le type TransformGroup expose les membres suivants.

  NomDescription
Méthode publiqueTransformGroupInitialise une nouvelle instance de la classe TransformGroup.
Début
  NomDescription
Propriété publiqueCanFreezeObtient une valeur qui indique la possibilité ou non de rendre un objet non modifiable. (Hérité de Freezable.)
Propriété publiqueChildrenObtient ou définit la TransformCollection qui définit ce TransformGroup.
Propriété publiqueDependencyObjectTypeObtient le DependencyObjectType qui encapsule le type CLR de cette instance.  (Hérité de DependencyObject.)
Propriété publiqueDispatcherObtient le Dispatcher associé à DispatcherObject. (Hérité de DispatcherObject.)
Propriété publiqueHasAnimatedPropertiesObtient une valeur qui indique si un ou plusieurs objets AnimationClock sont associés à l'une ou l'autre des propriétés de dépendance de cet objet. (Hérité de Animatable.)
Propriété publiqueInverseObtient l'inverse de cette transformation, si elle existe. (Hérité de Transform.)
Propriété publiqueIsFrozenObtient une valeur qui indique si l'objet est actuellement modifiable ou pas. (Hérité de Freezable.)
Propriété publiqueIsSealedRécupère une valeur qui indique si cette instance est actuellement sealed (en lecture seule). (Hérité de DependencyObject.)
Propriété publiqueValueObtient la structure Matrix qui décrit la transformation représentée par ce TransformGroup. (Substitue Transform.Value.)
Début
  NomDescription
Méthode publiqueApplyAnimationClock(DependencyProperty, AnimationClock)Applique une horloge AnimationClock à la propriété DependencyProperty spécifiée. Si la propriété est déjà animée, le comportement de transfert SnapshotAndReplace est utilisé. (Hérité de Animatable.)
Méthode publiqueApplyAnimationClock(DependencyProperty, AnimationClock, HandoffBehavior)Applique une horloge AnimationClock à la propriété DependencyProperty spécifiée. Si la propriété spécifiée est déjà animée, le comportement HandoffBehavior spécifié est utilisé. (Hérité de Animatable.)
Méthode publiqueBeginAnimation(DependencyProperty, AnimationTimeline)Applique une animation à la propriété DependencyPropertyspécifiée. L'animation est démarrée à la restitution de l'image suivante. Si la propriété spécifiée est déjà animée, le comportement de transfert SnapshotAndReplace est utilisé. (Hérité de Animatable.)
Méthode publiqueBeginAnimation(DependencyProperty, AnimationTimeline, HandoffBehavior)Applique une animation à la propriété DependencyPropertyspécifiée. L'animation est démarrée à la restitution de l'image suivante. Si la propriété spécifiée est déjà animée, le comportement HandoffBehavior spécifié est utilisé. (Hérité de Animatable.)
Méthode publiqueCheckAccessDétermine si le thread appelant a accès à ce DispatcherObject. (Hérité de DispatcherObject.)
Méthode publiqueClearValue(DependencyProperty)Efface la valeur de proximité d'une propriété. La propriété à effacer est spécifiée par un identificateur DependencyProperty. (Hérité de DependencyObject.)
Méthode publiqueClearValue(DependencyPropertyKey)Efface la valeur de proximité d'une propriété en lecture seule. La propriété à effacer est spécifiée par un DependencyPropertyKey. (Hérité de DependencyObject.)
Méthode publiqueCloneCrée une copie modifiable de TransformGroup, en créant des copies complètes de ses valeurs.
Méthode publiqueCloneCurrentValueCrée une copie modifiable de cet objet TransformGroup, en effectuant une copie complète de ses valeurs. Cette méthode ne copie pas les références de ressource, les liaisons de données ou les animations bien qu'elle copie leurs valeurs actuelles.
Méthode publiqueCoerceValueForce la valeur de la propriété de dépendance spécifiée. Cette opération est accomplie en appelant toute fonction CoerceValueCallback spécifiée dans les métadonnées de propriété pour la propriété de dépendance comme elle existe sur le DependencyObject appelant. (Hérité de DependencyObject.)
Méthode publiqueEqualsDétermine si un DependencyObject fourni est équivalent au DependencyObject réel. (Hérité de DependencyObject.)
Méthode publiqueFreeze()Rend l'objet actuel non modifiable et définit sa propriété IsFrozen sur true. (Hérité de Freezable.)
Méthode publiqueGetAnimationBaseValueRetourne la valeur non animée de la propriété DependencyProperty spécifiée. (Hérité de Animatable.)
Méthode publiqueGetAsFrozenCrée une copie figée de Freezable, à l'aide des valeurs de propriété (non-animées) de base. Étant donné que la copie est figée, tous les sous-objets figés sont copiés par référence. (Hérité de Freezable.)
Méthode publiqueGetCurrentValueAsFrozenCrée une copie figée de Freezable à l'aide des valeurs de propriété actuelles. Étant donné que la copie est figée, tous les sous-objets figés sont copiés par référence. (Hérité de Freezable.)
Méthode publiqueGetHashCodeObtient un code de hachage pour ce DependencyObject. (Hérité de DependencyObject.)
Méthode publiqueGetLocalValueEnumeratorCrée un énumérateur spécialisé pour déterminer quelles propriétés de dépendance ont des valeurs définies localement sur ce DependencyObject. (Hérité de DependencyObject.)
Méthode publiqueGetTypeObtient le Type de l'instance actuelle. (Hérité de Object.)
Méthode publiqueGetValueRetourne la valeur effective actuelle d'une propriété de dépendance sur cette instance d'un DependencyObject. (Hérité de DependencyObject.)
Méthode publiqueInvalidatePropertyRéévalue la valeur effective pour la propriété de dépendance spécifiée (Hérité de DependencyObject.)
Méthode publiqueReadLocalValueRetourne la valeur de proximité d'une propriété de dépendance, si elle existe. (Hérité de DependencyObject.)
Méthode publiqueSetCurrentValueDéfinit la valeur d'une propriété de dépendance sans modifier sa source de valeur. (Hérité de DependencyObject.)
Méthode publiqueSetValue(DependencyProperty, Object)Définit la valeur de proximité d'une propriété de dépendance, spécifiée par son identificateur de propriété de dépendance. (Hérité de DependencyObject.)
Méthode publiqueSetValue(DependencyPropertyKey, Object)Définit la valeur de proximité d'une propriété de dépendance en lecture seule, spécifiée par l'identificateur DependencyPropertyKey de la propriété de dépendance. (Hérité de DependencyObject.)
Méthode protégéeShouldSerializePropertyRetourne une valeur qui indique si les processus de sérialisation doivent sérialiser la valeur pour la propriété de dépendance fournie. (Hérité de DependencyObject.)
Méthode publiqueToString()Crée une représentation sous forme de chaîne de ce GeneralTransform. (Hérité de GeneralTransform.)
Méthode publiqueToString(IFormatProvider)Crée une représentation sous forme de chaîne de cette instance, selon le paramètre IFormatProvider passé. (Hérité de GeneralTransform.)
Méthode publiqueTransformTransforme le point spécifié et retourne le résultat. (Hérité de GeneralTransform.)
Méthode publiqueTransformBoundsTransforme le cadre englobant spécifié et retourne un cadre englobant aligné sur l'axe qui est exactement assez grand pour le contenir. (Hérité de Transform.)
Méthode publiqueTryTransformEssaie de transformer le point spécifié et retourne une valeur qui indique si la transformation a réussi. (Hérité de Transform.)
Méthode publiqueVerifyAccessGarantit que le thread appelant a accès à DispatcherObject. (Hérité de DispatcherObject.)
Début
  NomDescription
Événement publicChangedSe produit lorsque Freezable ou un objet qu'il contient est modifié. (Hérité de Freezable.)
Début
  NomDescription
Champ publicMembre statiqueChildrenPropertyIdentifie la propriété de dépendance Children.
Début
  NomDescription
Implémentation d'interface expliciteMéthode privéeIFormattable.ToStringMet en forme la valeur de l'instance actuelle à l'aide du format spécifié. (Hérité de GeneralTransform.)
Début

Utilisez un TransformGroup lorsque vous souhaitez appliquer plusieurs objets Transform à une seule propriété.

Dans une transformation de ce type, l'ordre des diverses transformations constitue un aspect important. Par exemple, si vous effectuez d'abord une rotation, puis une mise à l'échelle, puis une translation, le résultat obtenu n'est pas le même que si vous commencez par appliquer une translation, puis une rotation, puis une mise à l'échelle. L'une des raisons qui explique l'importance de l'ordre provient du fait que les transformations comme la rotation et la mise à l'échelle s'effectuent par rapport à l'origine du système de coordonnées. La mise à l'échelle d'un objet centré à l'origine ne produit pas le même résultat que la mise à l'échelle d'un objet qui a été éloigné de l'origine. De même, la rotation d'un objet centré à l'origine ne produit pas le même résultat que la rotation d'un objet qui a été éloigné de l'origine.

Fonctionnalités Freezable : dans la mesure où elle hérite de la classe Freezable, la classe TransformGroup propose plusieurs fonctionnalités spéciales : les objets TransformGroup peuvent être déclarés en tant que ressources, partagés entre plusieurs objets, définis en lecture seule pour améliorer les performances, clonés et thread-safe. Pour plus d'informations sur les différentes fonctionnalités fournies par les objets Freezable, consultez Vue d'ensemble des objets Freezable.

Cet exemple montre comment utiliser un TransformGroup pour regrouper deux ou plusieurs objets Transform en une seule Transform composite.

L'exemple suivant utilise un TransformGroup pour appliquer un ScaleTransform et un RotateTransform à un Button.


<Page 
  xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
  xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" >
  <StackPanel Margin="50">

      <Button 
        RenderTransformOrigin="0.5,0.5"
        HorizontalAlignment="Center">Click
        <Button.RenderTransform>

          <!-- TransformGroup enables you to apply multiple transforms. In 
               this example, the button is scaled and rotated. -->
          <TransformGroup>

            <!-- Triple the size (scale) of the button in the Y direction. -->
            <ScaleTransform ScaleY="3" />

            <!-- Rotate the button by 45 degrees. -->
            <RotateTransform Angle="45" />

          </TransformGroup>
        </Button.RenderTransform>
      </Button>

  </StackPanel>
</Page>




Imports System
Imports System.Windows
Imports System.Windows.Controls
Imports System.Windows.Media

Namespace SDKSample
	Partial Public Class MultipleTransformsExample
		Inherits Page
		Public Sub New()
			' Create a Button that will have two transforms applied to it.
			Dim myButton As New Button()
			myButton.Content = "Click"

			' Set the center point of the transforms.
			myButton.RenderTransformOrigin = New Point(0.5,0.5)

			' Create a transform to scale the size of the button.
			Dim myScaleTransform As New ScaleTransform()

			' Set the transform to triple the scale in the Y direction.
			myScaleTransform.ScaleY = 3

			' Create a transform to rotate the button
			Dim myRotateTransform As New RotateTransform()

			' Set the rotation of the transform to 45 degrees.
			myRotateTransform.Angle = 45

			' Create a TransformGroup to contain the transforms
			' and add the transforms to it.
			Dim myTransformGroup As New TransformGroup()
			myTransformGroup.Children.Add(myScaleTransform)
			myTransformGroup.Children.Add(myRotateTransform)

			' Associate the transforms to the button.
			myButton.RenderTransform = myTransformGroup

			' Create a StackPanel which will contain the Button.
			Dim myStackPanel As New StackPanel()
			myStackPanel.Margin = New Thickness(50)
			myStackPanel.Children.Add(myButton)
			Me.Content = myStackPanel

		End Sub
	End Class
End Namespace



using System;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Media;

namespace SDKSample
{
    public partial class MultipleTransformsExample : Page
    {
        public MultipleTransformsExample()
        {
            // Create a Button that will have two transforms applied to it.
            Button myButton = new Button();
            myButton.Content = "Click";

            // Set the center point of the transforms.
            myButton.RenderTransformOrigin = new Point(0.5,0.5);

            // Create a transform to scale the size of the button.
            ScaleTransform myScaleTransform = new ScaleTransform();

            // Set the transform to triple the scale in the Y direction.
            myScaleTransform.ScaleY = 3;

            // Create a transform to rotate the button
            RotateTransform myRotateTransform = new RotateTransform();

            // Set the rotation of the transform to 45 degrees.
            myRotateTransform.Angle = 45;

            // Create a TransformGroup to contain the transforms
            // and add the transforms to it.
            TransformGroup myTransformGroup = new TransformGroup();
            myTransformGroup.Children.Add(myScaleTransform);
            myTransformGroup.Children.Add(myRotateTransform);

            // Associate the transforms to the button.
            myButton.RenderTransform = myTransformGroup;

            // Create a StackPanel which will contain the Button.
            StackPanel myStackPanel = new StackPanel();
            myStackPanel.Margin = new Thickness(50);
            myStackPanel.Children.Add(myButton);
            this.Content = myStackPanel;

        }
    }
}


.NET Framework

Pris en charge dans : 4.5, 4, 3.5, 3.0

.NET Framework Client Profile

Pris en charge dans : 4, 3.5 SP1

Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (rôle principal du serveur non pris en charge), Windows Server 2008 R2 (rôle principal du serveur pris en charge avec SP1 ou version ultérieure ; Itanium non pris en charge)

Le .NET Framework ne prend pas en charge toutes les versions de chaque plateforme. Pour obtenir la liste des versions prises en charge, consultez Configuration requise du .NET Framework.
Tous les membres static (Shared en Visual Basic) publics de ce type sont thread-safe. Il n'est pas garanti que les membres d'instance soient thread-safe.
Cela vous a-t-il été utile ?
(1500 caractères restants)

Ajouts de la communauté

AJOUTER
© 2013 Microsoft. Tous droits réservés.