Visual.TransformToDescendant(Visual) Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Возвращает преобразование, которое может использоваться для преобразования координат этого объекта Visual в координаты заданного потомка визуального объекта.
public:
System::Windows::Media::GeneralTransform ^ TransformToDescendant(System::Windows::Media::Visual ^ descendant);
public System.Windows.Media.GeneralTransform TransformToDescendant (System.Windows.Media.Visual descendant);
member this.TransformToDescendant : System.Windows.Media.Visual -> System.Windows.Media.GeneralTransform
Public Function TransformToDescendant (descendant As Visual) As GeneralTransform
Параметры
Возвращаемое значение
Значение типа GeneralTransform.
Исключения
descendant
имеет значение null
.
Визуальный объект не является предком объекта descendant
.
Визуальные объекты не связаны.
Примеры
В следующем примере разметки показано TextBlock , что он содержится в объекте StackPanel .
<StackPanel Name="myStackPanel" Margin="8">
<TextBlock Name="myTextBlock" Margin="4" Text="Hello, world" />
</StackPanel>
В следующем примере кода показано, как использовать TransformToDescendant метод для получения смещения относительно дочернего StackPanel TextBlockэлемента. Значения смещения содержатся в возвращаемом значении GeneralTransform .
// Return the general transform for the specified visual object.
GeneralTransform generalTransform1 = myStackPanel.TransformToDescendant(myTextBlock);
// Retrieve the point value relative to the child.
Point currentPoint = generalTransform1.Transform(new Point(0, 0));
' Return the general transform for the specified visual object.
Dim generalTransform1 As GeneralTransform = myStackPanel.TransformToDescendant(myTextBlock)
' Retrieve the point value relative to the child.
Dim currentPoint As Point = generalTransform1.Transform(New Point(0, 0))
Смещение учитывает Margin значения для всех объектов. В этом случае X значение равно -4 и Y равно -4. Значения смещения являются отрицательными значениями, так как родительский объект отрицательно смещается относительно дочернего объекта.