Я разрабатываю приложение для Windows-телефона, и я хочу оценить расстояние для элемента, когда пользователь щелкает на экране. Проблема заключается в ManipulationDeltaRoutedEventArgs.IsInertial
всегда возвращает false, и я не могу обнаружить щелчок пользователя.
Это мой обработчик событий ManipulationDelta
private void ItemList_ManipulationDelta(Object sender, ManipulationDeltaRoutedEventArgs e)
{
double currPos = e.Position.X;
var fwElement = (FrameworkElement)sender;
Thickness margin = fwElement.Margin;
margin.Left += (currPos - origin);
if (margin.Left < marginLeft) margin.Left = marginLeft;
fwElement.Margin = margin;
if (e.IsInertial)
{
System.Diagnostics.Debug.WriteLine("intertial");
}
}
Вы должны иметь Инерционные связанные ManipulationModes
включены для e.IsInertial
работать.
Например,
this.ManipulationMode = ManipulationModes.TranslateX | ManipulationModes.TranslateInertia;