У меня есть простой UserControl, реализованный, как показано ниже, - который я помещаю в Canvas. Я перемещаю его, используя Multi-touch, и хочу иметь возможность читать его новое положение X, Y, используя процедурный код C #. В идеале я хотел бы иметь X и Y как два свойства или как точку (X, Y).
<UserControl x:Class="TouchControlLibrary.myControl"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
mc:Ignorable="d"
d:DesignHeight="64" d:DesignWidth="104">
<Border Name="ControlBorder" BorderThickness="1" BorderBrush="Black">
<DockPanel Margin="1" Height="60 " Width="100">
<StackPanel DockPanel.Dock="Left" Background="Gray" Width="20" >
<Button Background="#FFDEDE53" Padding="0">In</Button>
</StackPanel>
<StackPanel DockPanel.Dock="Right" Background="Gray" Width="20" >
<Button Background="#FFE8B48F" Padding="0">Out</Button>
</StackPanel>
</DockPanel>
</Border>
</UserControl>
Я ожидал, что смогу создать присоединенное свойство для каждого из 'X' и 'Y' и заполнить их из Canvas.Left и Canvas.Top, используя привязку или некоторую форму присоединенного свойства или, возможно, что-то еще полностью.
Тем не менее, несмотря на то, что я потратил довольно много времени на поиск решения, все, что я нашел, похоже, «не совсем то, что нужно».
Что бы вы предложили мне сделать, чтобы решить эту проблему?