В WPF сенсорный предел пользовательского интерфейса, изображения (или любой элемент) с его родителем
Я пытаюсь разработать приложение для рабочего стола windows, которое поддерживает сенсорные экраны
поэтому я хочу позволить пользователю масштабировать или перемещать фотографии с помощью прикосновения
но моя проблема в том, что с этим кодом картинка будет перемещаться по окнам не только в своем родителе (Canvas)
я хочу ограничить изображение (прямоугольник) в его родителе (холст)
это пример кода для перемещения или масштабирования прямоугольника :
код XAML
<Canvas Background="Green" x:Name="_canvas" ManipulationStarting="_canvas_ManipulationStarting" ManipulationDelta="_canvas_ManipulationDelta" Margin="76,105,117,46"> <rectangle ismanipulationenabled="True" fill="Red" width="100" height="100"></rectangle> </Canvas>
С#
private void _canvas_ManipulationStarting(object sender, ManipulationStartingEventArgs e) { e.ManipulationContainer = _canvas; e.Handled = true; } private void _canvas_ManipulationDelta(object sender, ManipulationDeltaEventArgs e) { var element = e.OriginalSource as UIElement; var transformation = element.RenderTransform as MatrixTransform; var matrix = transformation == null ? Matrix.Identity : transformation.Matrix; matrix.ScaleAt(e.DeltaManipulation.Scale.X, e.DeltaManipulation.Scale.Y, e.ManipulationOrigin.X, e.ManipulationOrigin.Y); matrix.RotateAt(e.DeltaManipulation.Rotation, e.ManipulationOrigin.X, e.ManipulationOrigin.Y); matrix.Translate(e.DeltaManipulation.Translation.X, e.DeltaManipulation.Translation.Y); element.RenderTransform = new MatrixTransform(matrix); e.Handled = true; }
Что я уже пробовал:
я пытаюсь добавить сенсорную поддержку в свое приложение