Este artigo foi traduzido por máquina. Coloque o ponteiro do mouse sobre as frases do artigo para ver o texto original. Mais informações.
Tradução
Original
Informações
O tópico solicitado está sendo mostrado abaixo. No entanto, este tópico não está incluído nesta biblioteca.

Propriedade UIElement.RenderTransformOrigin

Obtém ou define o ponto central de qualquer transformação possíveis render declarado por RenderTransform, relativo dos limites do elemento. Este é um propriedade de dependência.

Namespace:  System.Windows
Assembly:  PresentationCore (em PresentationCore.dll)
XMLNS para XAML: http://schemas.microsoft.com/winfx/2006/xaml/presentation, http://schemas.microsoft.com/netfx/2007/xaml/presentation

public Point RenderTransformOrigin { get; set; }
<object>
  <object.RenderTransformOrigin>
    <Point X="xOrigin" Y="yOrigin"/>
  </object.RenderTransformOrigin>
</object>
<object RenderTransformOrigin="xOrigin, yOrigin"/>

Valores de XAML

xOrigin

O fator de origem horizontal. Normalmente, isso é fornecido como um valor entre 0 e 1. Consulte comentários.

yOrigin

O fator de origem vertical. Normalmente, isso é fornecido como um valor entre 0 e 1. Consulte comentários.

Valor de propriedade

Tipo: System.Windows.Point
O valor que declara a transformação de renderização. O valor padrão é um Point com coordenadas (0,0).

Campo identificador

RenderTransformOriginProperty

Propriedades de metadados definidas como true

None

RenderTransformOrigin tem um uso um pouco diferente do padrão de Point estruturar o valor, em que o Point não representa um local absoluto em um sistema de coordenadas. Em vez disso, os valores entre 0 e 1 são interpretados como um fator para o intervalo do elemento atual em cada x, o eixo y. Por exemplo, (0.5,0.5) fará com que a transformação de renderização a ser centralizado no elemento, ou (1,1) colocaria a transformação de processamento na parte inferior direita canto do elemento. NaN não é um valor aceito.

Valores, além de 0 e 1 também são aceitos e resultarão em mais efeitos de transformação não convencionais. Por exemplo, se você definir RenderTransformOrigin (5,5) e, em seguida, aplicar um RotateTransform, o ponto de rotação será bem fora dos limites do elemento em si. A transformação irá girar o elemento ao redor de um círculo grande que se origina fora do canto inferior direito. A origem pode estar em algum lugar dentro de seu elemento pai e poderia ser possivelmente fora do quadro ou modo de exibição. Valores de ponto negativo são semelhantes, estes serão vá além da parte superior esquerda limites.

Processar transformações não afetam o layout e são normalmente usadas para animar ou aplicar um efeito temporário a um elemento.

O exemplo a seguir cria elementos no código, aplica um RenderTransformOrigine em seguida, aplica um RenderTransform.


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;
}


.NET Framework

Com suporte em: 4, 3.5, 3.0

.NET Framework Client Profile

Com suporte em: 4, 3.5 SP1

Windows 7, Windows Vista SP1 ou posterior, Windows XP SP3, Windows Server 2008 (Server Core não compatível), Windows Server 2008 R2 (Server Core não compatível com SP1 ou posterior), Windows Server 2003 SP2

O .NET Framework não oferece suporte a todas as versões de cada plataforma. Para obter uma lista das versões com suporte, consulte Requisitos de sistema do .NET Framework.

Contribuições da comunidade

Mostrar:
© 2015 Microsoft