[状況]
スタック パネルに追加したカスタム アイテム コントロールがあり、その後はドラッグして自由に移動できます。
public partial class CustomItem: UserControl
{
private bool IsDragging { get; set; }
private Point clickPosition;
public CustomItem()
{
InitializeComponent();
this.DataContext = this;
this.MouseLeftButtonDown += (s, ea) =>
{
clickPosition = ea.GetPosition(this.LayoutRoot);
this.CaptureMouse();
IsDragging = true;
};
this.MouseMove += (s, ea) =>
{
if (IsDragging)
{
this.transFormThisShit.X = ea.GetPosition(this).X - clickPosition.X;
this.transFormThisShit.Y = ea.GetPosition(this).Y - clickPosition.Y;
}
};
this.MouseLeftButtonUp += (s, ea) =>
{
this.ReleaseMouseCapture();
IsDragging = false;
};
}
[問題]
3 つの項目を追加した後、最初の項目を 2 番目または 3 番目の項目にドラッグすると、後ろにジャンプします。
2 番目のアイテムを最初のアイテムの上にドラッグすると前に移動しますが、3 番目のアイテムの上にドラッグすると後ろに移動します。
コントロールのドラッグが常にビジュアル ツリーの上にあるようにするにはどうすればよいですか?