以下のような単純な UserControl があります - Canvas に配置します。マルチタッチを使用して移動し、手続き型 C# コードを使用して新しい X、Y 位置を読み取れるようにしたいと考えています。理想的には、X と Y を 2 つのプロパティまたは Point (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 からそれらを埋めることを期待していました。解決策を探すのにかなりの時間を費やしましたが、見つけたものはすべて「必要なものではない」ようです。