2
我有一個wpf應用程序,我在Windows 7中編寫和完美工作。我正在移植到Windows 8.1,觸摸事件的行爲完全不同。wpf觸摸桌面應用程序在Windows 8
我已經寫了一個控件,它會在被拖放到另一個相同類型的控件時切換位置。下面是控件的previewTouchDown和Drop處理程序。
private void UserControl_PreviewTouchDown(object sender, TouchEventArgs e)
{
DragDrop.DoDragDrop(this, _comparisonElement, DragDropEffects.Copy);
}
private void UserControl_Drop(object sender, DragEventArgs e)
{
ComparisonCopy from = (ComparisonCopy)e.Data.GetData("comparisonFormat");
ComparisonCopy to = (ComparisonCopy)_comparisonElement.GetData("comparisonFormat");
if (from != to)
{
ComparisonEventArgs args = new ComparisonEventArgs();
args.from = from;
args.to = to;
this.ComparisonMoved(sender, args);
e.Handled = true;
}
}
在Windows 8.1中運行此操作會導致拖放操作一次。一旦它工作,它將永遠不會再工作。它看起來像最初的拖放是在一個卡住的狀態。
我試過使用DragMove事件,這將允許切換多次,但是,它會隨機切換控件。只要我在屏幕上觸摸另一個控件,它就會用該控件替換上一個控件。再一次,似乎感覺被卡住了某種程度。
用鼠標完成此操作的時間是100%。
感謝您的幫助。 -Matt