我有一个列表框一个 MainControl 和 4 个 PreviewControls。我希望当我从列表框中单击 mainControl 更改的项目时(发生这种情况)。但我想向 listboxitems 添加一个拖动行为,以便我可以将一个 listboxitem 拖动到其中一个 previewControls。我试过了,但是当我尝试拖动 listboxitem 时,总是会触发 selectionchanged 事件。
所以我希望当我执行 MouseLeftDown 并移动列表框项时,请拖动。当 Click 或 MouseLefUp (selectionchanged) 发生时 MainControl 发生变化。
我试过了,但 PreviewMouseLeftButtonDown 事件再次没有执行其他事件。
private void lstCameras_PreviewMouseLeftButtonDown_1(object sender, MouseButtonEventArgs e)
{
startPoint = e.GetPosition(null);
if (!Test) e.Handled = true;
else
{
Test = false;
}
Console.WriteLine("lstCameras_PreviewMouseLeftButtonDown_1 Handled = " + e.Handled);
}
private void lstCameras_PreviewMouseUp_1(object sender, MouseButtonEventArgs e)
{
Console.WriteLine("lstCameras_MouseUp_1");
if (!Test)
{
Test = true;
lstCameras.RaiseEvent(new MouseButtonEventArgs(Mouse.PrimaryDevice, Environment.TickCount, MouseButton.Left) { RoutedEvent = ListBox.PreviewMouseLeftButtonDownEvent });
}
else
{
Test = false;
}
Console.WriteLine("end lstCameras_MouseUp_1 Test = " + Test);
}