2016-06-13 1 views
0

Я использовал приведенный ниже код, чтобы отобразить изображение на холсте, и теперь я хочу удалить отображаемое изображение при длительном нажатии на это изображение. Я пробую контекстное меню для этого, но он не работает. пожалуйста, кто-нибудь сказать мне, как я могу это сделать или правильно использовать ContextMenu для негоЯ хочу, чтобы удалить изображение на longpress на изображение в холсте

private void Stickers1_SelectionChanged(object sender, SelectionChangedEventArgs e) { 
    var selecteditem = e.AddedItems[0] as StickersImageListModel; 

    Stickers1.Visibility = Visibility.Collapsed;  

    // taking image from a list StickersImageListModel of images and bind with imageitem varaible  
    Image imageitem = new Image();  
    BitmapImage image = new BitmapImage(new System.Uri(selecteditem.Imageurl, UriKind.Absolute));  
    imageitem.Source = image; 

    //Add the images on canvas  
    my_canvas.Children.Add(imageitem);  
    imageitem.AllowDrop = true; 

    // DRag and drop the images on canvas 
    imageitem.ManipulationMode = ManipulationModes.All;  
    imageitem.ManipulationDelta += Drag_ManipulationDelta;  
    CompositeTransform ct = new CompositeTransform();  
    imageitem.RenderTransform = ct; 

    my_canvas.Visibility = Visibility.Visible;  
} 
+0

* «Это не работает» * не является описание ошибки. – IInspectable

+0

он работает в моей заявке –

+0

В этом коде нет ошибки, но я хочу удалить изображения по длинному изображению –

ответ

0

Вы можете использовать Holding событие для изображения. Однако вы должны отметить, что событие Холдинга не будет запущено для настольных приложений, вместо этого вы должны использовать событие RightTapped. Если вы ориентируетесь только на мобильные приложения, которые вы можете использовать Holding событие

// imageitem.RightTapped += Imageitem_RightTapped; 
      imageitem.Holding += Imageitem_Holding; 
      imageitem.IsRightTapEnabled = true; 
      imageitem.IsHoldingEnabled = true; 

private void Imageitem_RightTapped(object sender, RightTappedRoutedEventArgs e) 
     { 
      mycanvas.Children.Remove(sender as Image); 
     } 

     private void Imageitem_Holding(object sender, HoldingRoutedEventArgs e) 
     { 
      mycanvas.Children.Remove(sender as Image); 
     } 
+0

спасибо, сэр, он решил мою проблему –

Смежные вопросы