Saya telah menggunakan kode berikut untuk menarik & melepas gambar di atas kanvas dan dengan bantuan pinch zoom saya dapat memperbesar gambar saya di tab dengan sentuhan. tapi saya ingin melakukan hal yang sama di desktop dengan bantuan mouse. Apa itu mungkin. Saya baru dalam pemrograman UWP jadi tolong bantu saya.
void Drag_ManipulationDelta1(object sender, ManipulationDeltaRoutedEventArgs e)
{
// Move the rectangle.
//dragTranslation.X += e.Delta.Translation.X;
//dragTranslation.Y += e.Delta.Translation.Y;
TextBlock text = sender as TextBlock;
CompositeTransform ct1 = text.RenderTransform as CompositeTransform;
ct1.ScaleX *= e.Delta.Scale;
ct1.ScaleY *= e.Delta.Scale;
if (ct1.ScaleX < 1.0) ct1.ScaleX = 1.0;
if (ct1.ScaleY < 1.0) ct1.ScaleY = 1.0;
if (ct1.ScaleX > 4.0) ct1.ScaleX = 4.0;
if (ct1.ScaleY > 4.0) ct1.ScaleY = 4.0;
//Checking with canvas boundary so that image wont go behind canvas
if ((ct1.TranslateX + e.Delta.Translation.X) <= (my_canvas.ActualWidth - text.ActualWidth) && ct1.TranslateX + e.Delta.Translation.X >= 0)
ct1.TranslateX += e.Delta.Translation.X;
if ((ct1.TranslateY + e.Delta.Translation.Y) <= (my_canvas.ActualHeight - text.ActualHeight) && ct1.TranslateY + e.Delta.Translation.Y >= 0)
ct1.TranslateY += e.Delta.Translation.Y;
if ((ct1.TranslateX + e.Delta.Translation.X) <= (my_canvas.ActualWidth - text.MinWidth) && ct1.TranslateX + e.Delta.Translation.X >= 1150)
ct1.TranslateX -= e.Delta.Translation.X;
if ((ct1.TranslateY + e.Delta.Translation.Y) <= (my_canvas.ActualHeight - text.MinHeight) && ct1.TranslateY + e.Delta.Translation.Y >= 500)
ct1.TranslateY -= e.Delta.Translation.Y;
}
// DRag and drop the images on canvas
imageitem.ManipulationMode = ManipulationModes.All;
imageitem.ManipulationDelta += Drag_ManipulationDelta;
CompositeTransform ct = new CompositeTransform();
imageitem.RenderTransform = ct;