Поделиться через


ScaleTransform Класс

Определение

Масштабирует объект в двумерной системе координат x-y.

public ref class ScaleTransform sealed : Transform
/// [Windows.Foundation.Metadata.Activatable(65536, Windows.Foundation.UniversalApiContract)]
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class ScaleTransform final : Transform
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
/// [Windows.Foundation.Metadata.Activatable(65536, "Windows.Foundation.UniversalApiContract")]
class ScaleTransform final : Transform
[Windows.Foundation.Metadata.Activatable(65536, typeof(Windows.Foundation.UniversalApiContract))]
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public sealed class ScaleTransform : Transform
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
[Windows.Foundation.Metadata.Activatable(65536, "Windows.Foundation.UniversalApiContract")]
public sealed class ScaleTransform : Transform
Public NotInheritable Class ScaleTransform
Inherits Transform
<ScaleTransform .../>
Наследование
Object Platform::Object IInspectable DependencyObject GeneralTransform Transform ScaleTransform
Атрибуты

Требования к Windows

Семейство устройств
Windows 10 (появилось в 10.0.10240.0)
API contract
Windows.Foundation.UniversalApiContract (появилось в v1.0)

Примеры

В этом примере XAML используется ScaleTransform для масштабирования текста по исходному размеру.

<StackPanel>
    <TextBlock FontFamily="Verdana"
               FontSize="32"
               FontWeight="Bold" 
               Foreground="SteelBlue"
               Text="Scaled Text" />

    <!-- Scale the text width using a ScaleTransform. -->
    <TextBlock FontFamily="Verdana"
               FontSize="32"
               FontWeight="Bold"
               Foreground="SteelBlue"
               Text="Scaled Text">
        <TextBlock.RenderTransform>
            <ScaleTransform ScaleX="1.5" ScaleY="1.0" />
        </TextBlock.RenderTransform>
    </TextBlock>

    <!-- Scale the text height using a ScaleTransform. -->
    <TextBlock FontFamily="Verdana"
               FontSize="32"
               FontWeight="Bold" 
               Foreground="SteelBlue"
               Text="Scaled Text">
        <TextBlock.RenderTransform>
            <ScaleTransform ScaleX="1.0" ScaleY="2.0" />
        </TextBlock.RenderTransform>
    </TextBlock>
</StackPanel>

После применения преобразования текст выглядит следующим образом:

Текст с примененным преобразованием масштаба

В этом примере показано, как получить доступ к преобразованию и изменить его в коде во время выполнения. При каждом нажатии прямоугольника масштаб увеличивается.

<StackPanel>
  <Rectangle PointerPressed="HandlePointerPressed"
    Width="50" Height="50" Fill="RoyalBlue">
    <Rectangle.RenderTransform>

      <!-- If you give the transform a name you can 
        access it easily from code. -->
      <ScaleTransform x:Name="myScaleTransform" />
    </Rectangle.RenderTransform>
  </Rectangle>
</StackPanel>
private void HandlePointerPressed(object sender, PointerRoutedEventArgs e)
{
    // Increase ScaleX and ScaleY by 25%.
    myScaleTransform.ScaleX = myScaleTransform.ScaleX * 1.25;
    myScaleTransform.ScaleY = myScaleTransform.ScaleY * 1.25;
}
Private Sub HandlePointerPressed(ByVal sender As Object, ByVal e As PointerRoutedEventArgs)
    ' Increase ScaleX and ScaleY by 25%.
    myScaleTransform.ScaleX = (myScaleTransform.ScaleX * 1.25)
    myScaleTransform.ScaleY = (myScaleTransform.ScaleY * 1.25)
End Sub

Конструкторы

ScaleTransform()

Инициализирует новый экземпляр класса ScaleTransform .

Свойства

CenterX

Возвращает или задает координату X центральной точки этого объекта ScaleTransform.

CenterXProperty

Определяет свойство зависимостей CenterX .

CenterY

Возвращает или задает координату Y центральной точки объекта ScaleTransform.

CenterYProperty

Определяет свойство зависимостей CenterY .

Dispatcher

Возвращает объект CoreDispatcher , с которым связан этот объект. CoreDispatcher представляет собой средство, которое может получить доступ к DependencyObject в потоке пользовательского интерфейса, даже если код инициируется потоком, не относящегося к пользовательскому интерфейсу.

(Унаследовано от DependencyObject)
Inverse

Возвращает обратное преобразование этого GeneralTransform, если это возможно.

(Унаследовано от GeneralTransform)
InverseCore

Реализует поведение для возвращаемого значения Inverse в производной или пользовательской generalTransform.

(Унаследовано от GeneralTransform)
ScaleX

Получает или задает коэффициент масштабирования по оси X.

ScaleXProperty

Определяет свойство зависимостей ScaleX .

ScaleY

Получает или задает коэффициент масштабирования по оси y.

ScaleYProperty

Определяет свойство зависимостей ScaleY .

Методы

ClearValue(DependencyProperty)

Очищает локальное значение свойства зависимостей.

(Унаследовано от DependencyObject)
GetAnimationBaseValue(DependencyProperty)

Возвращает любое базовое значение, установленное для свойства зависимостей, которое применяется в случаях, когда анимация не активна.

(Унаследовано от DependencyObject)
GetValue(DependencyProperty)

Возвращает текущее действующее значение свойства зависимостей из DependencyObject.

(Унаследовано от DependencyObject)
ReadLocalValue(DependencyProperty)

Возвращает локальное значение свойства зависимостей, если задано локальное значение.

(Унаследовано от DependencyObject)
RegisterPropertyChangedCallback(DependencyProperty, DependencyPropertyChangedCallback)

Регистрирует функцию уведомления для прослушивания изменений определенного DependencyProperty в этом экземпляре DependencyObject .

(Унаследовано от DependencyObject)
SetValue(DependencyProperty, Object)

Задает локальное значение свойства зависимостей для Объекта DependencyObject.

(Унаследовано от DependencyObject)
TransformBounds(Rect)

Выполняет преобразование заданного ограничивающего прямоугольника и возвращает выровненный по осям ограничивающий прямоугольник, являющийся достаточно большим для его размещения.

(Унаследовано от GeneralTransform)
TransformBoundsCore(Rect)

Предоставляет средства для переопределения поведения TransformBounds в производном классе преобразования.

(Унаследовано от GeneralTransform)
TransformPoint(Point)

Использует логику этого объекта преобразования для преобразования указанной точки и возвращает результат.

(Унаследовано от GeneralTransform)
TryTransform(Point, Point)

Пытается преобразовать заданную точку и возвращает значение, указывающее, успешно ли выполнено преобразование.

(Унаследовано от GeneralTransform)
TryTransformCore(Point, Point)

Предоставляет средства для переопределения поведения TryTransform в производном классе преобразования.

(Унаследовано от GeneralTransform)
UnregisterPropertyChangedCallback(DependencyProperty, Int64)

Отменяет уведомление об изменениях, которое было ранее зарегистрировано путем вызова Метода RegisterPropertyChangedCallback.

(Унаследовано от DependencyObject)

Применяется к

См. также раздел