1

これらの手法を使用して、WPF TreeView コントロールでドラッグ アンド ドロップ ソリューションをまとめようとしています: TreeView へのドラッグ アンド ドロップ、ドロップされた項目を挿入する場所のインデックスの検索

ユーザーが TreeViewItem をクリックすると、最初にtreeViewItem_MouseLeftButtonDownが実行され、次にtreeViewItem_Dropも実行されます。クリックするたびに。

4

1 に答える 1

2

ハンドラーDragDrop.DoDragDrop()から呼び出しているようです。treeViewItem_MouseLeftButtonマウス ボタンが離されるtreeViewItem_Dropとイベントが発生するため、マウス クリックごとにドロップ イベントが発生します。代わりにハンドラーDoDragDropから呼び出してみてください。treeViewItem_MouseMoveを呼び出す前に、マウスの左ボタンが押されていることを確認してDroDragDropください。DragDropまた、次のように、操作を開始する前にマウスが最小距離移動したことを確認することもできます。

if(e.LeftButton == MouseButtonState.Pressed 
    && horizontal_move > SystemParameters.MinimumHorizontalDragDistance)
{
    DragDrop.DoDragDrop();
}
于 2013-05-13T18:44:54.100 に答える