2013-03-01 31 views
5

Windows Phone 8 web tarayıcısı denetiminde çift dokunuşlu yakınlaştırmayı kontrol etmek istiyorum ancak webbrowser denetiminde çift dokunma olayını yakalayabiliyordum. Meta etiketi niteliklerini kullanarak ölçeklemeyi de belirleyemedim, çünkü bir sayfamın görüntülendiği sayfadan beri HTML sayfasını düzenleyemedim. Herhangi biri bu gibi bir sorunla karşı karşıya kaldı. 2 günden fazla bir süredir bu sorunu düzeltebilen bir çözüm,Windows Phone 8 Webbrowser denetimi

Herhangi bir yardım büyük bir memnuniyetle karşılanacaktır!

Selamlar, Mawy,

+0

Daha spesifik olabilir misiniz? DoubleTap olayından sonra tam olarak neyi başarmaya çalışıyorsunuz? Web tarayıcısı denetiminde bir çift dokunma olayının tetiklenmesi, normal olarak içeriği varsayılan olarak uzaklaştırır ve içeriğe görünür alana sığdırır. – halil

cevap

2

Merhaba bu o

#region stop zoom and scroll 
    public bool ScrollDisabled { get; set; } 
    private void WB_Loaded(object sender, RoutedEventArgs e) 
    { 
     var border = WB.Descendants<Border>().Last() as Border; 
     ScrollDisabled = true; 
     border.ManipulationDelta += Border_ManipulationDelta; 
     border.ManipulationCompleted += Border_ManipulationCompleted; 
     border.DoubleTap += border_DoubleTap; 
     //Debug.WriteLine("Height " + border.Child); 
     //ContentPresenter cp = border.Child as ContentPresenter; 
     //Debug.WriteLine("ContentPresenter " + cp.Height); 
     //cp.Height = 650; 
     //Debug.WriteLine("ContentPresenter " + cp.Content); 
     //Grid gd = cp.Content as Grid; 
     //Debug.WriteLine("ContentPresenter " + gd.Children.First()); 
     //border.MaxHeight = 700; 
    } 

    void border_DoubleTap(object sender, System.Windows.Input.GestureEventArgs e) 
    { 
     // suppress double-tap zoom 
     e.Handled = true; 
    } 

    private void Border_ManipulationCompleted(object sender, 
              ManipulationCompletedEventArgs e) 
    { 

     if (e.FinalVelocities.ExpansionVelocity.X != 0.0 || 
      e.FinalVelocities.ExpansionVelocity.Y != 0.0 
      ||(ScrollDisabled && e.IsInertial)) 
     { 
      e.Handled = true; 
      Debug.WriteLine("Scroll ManipulationCompleted"); 
     } 
    } 

    private void Border_ManipulationDelta(object sender, 
              ManipulationDeltaEventArgs e) 
    { 
     // suppress zoom 
     if (e.DeltaManipulation.Scale.X != 0.0 || 
      e.DeltaManipulation.Scale.Y != 0.0) 
      e.Handled = true; 

     //optionally suppress scrolling 
     if (ScrollDisabled) 
     { 
      if (e.DeltaManipulation.Translation.X != 0.0 || 
       e.DeltaManipulation.Translation.Y != 0.0) 
       e.Handled = true; 
     } 
    } 
    #endregion 
Windows Phone 8 ve Windows Phone 8.1 (SilverLight) ile benim projede iyi çalışıyor benim durdurma kaydırma için kod, yakınlaştırma ve çift musluk olduğunu

Bu kod için bir C# sınıfı gerektirir. here

İlgili konular