私はあなたが表面SDKを使用していると仮定。 (そうでない場合は、なぜですか?) これは素晴らしいリソースです:http://msdn.microsoft.com/en-us/library/ff727837.aspx
編集:私はあなたがタッチオーバーレイを使用するのを見ました。これらはWindows 7のタッチイベントを誘発しませんが、単にマウスをシミュレートするだけですか?もしそうなら、私はちょっと好奇心が強いのですが、これで通常のマウスと同じようにドラッグアンドドロップすることはできません。
EDIT2:
だから、あなたが何をする必要があるかのDataTemplateで2人のリスナーを追加することです。 PreviewTouchDownおよびPreviewTouchMove。
これは私がマウスでドラッグ操作を開始するために使用するものですが、いくつかの変更を加えてタッチでも機能するはずです。
private void TreePreviewMouseLeftButtonDown(object sender, MouseButtonEventArgs e)
{
_startPoint = e.GetPosition(null);
_checkDragDrop = true;
}
private void TempTreeMouseMove(object sender, MouseEventArgs e)
{
if (e.LeftButton == MouseButtonState.Pressed)
{
var mousePos = e.GetPosition(null);
var diff = _startPoint - mousePos;
if (_checkDragDrop)
{
if (Math.Abs(diff.X) > SystemParameters.MinimumHorizontalDragDistance || Math.Abs(diff.Y) > SystemParameters.MinimumVerticalDragDistance)
{
_checkDragDrop = false;
.
.
.
DragDropEffects val = DragDrop.DoDragDrop(DragSourceList, dragData, DragDropEffects.Move);
}
}
}
}
おそらくこれでTelerikクラスを使用することはできません。
Telerik DragDrop Manager(http://www.telerik.com/products/wpf/drag-drop.aspx)を使用していますか? – Dennis