我必须在Windows Phone应用程序中显示 Web浏览器中的滚动查看器,并满足以下要求:
网络浏览器可以在其内容中进行缩放和导航到链接。
我该如何实现?非常感谢任何链接或样品。
答案 0 :(得分:1)
我正在使用这样的代码。将事件附加到浏览器控件树中的Border元素(我使用Linq到Visual Tree - http://www.scottlogic.co.uk/blog/colin/2010/03/linq-to-visual-tree/)。
Browser.Loaded +=
(s,e)=>
{
var border = Browser.Descendants<Border>().Last() as Border;
if (border != null)
{
border.ManipulationDelta += BorderManipulationDelta;
border.ManipulationCompleted += BorderManipulationCompleted;
border.DoubleTap += BorderDoubleTap;
}
};
我正在使用的更多实现是防止捏合和缩放,这是你想要工作的东西。虽然这可以帮助你朝着正确的方向发展。
private void BorderDoubleTap(object sender, GestureEventArgs e)
{
e.Handled = true;
}
private void BorderManipulationDelta(object sender, ManipulationDeltaEventArgs e)
{
// suppress zoom
if (Math.Abs(e.DeltaManipulation.Scale.X) > 0.0||
Math.Abs(e.DeltaManipulation.Scale.Y) > 0.0)
e.Handled = true;
}
private void BorderManipulationCompleted(object sender, ManipulationCompletedEventArgs e)
{
// suppress zoom
if (Math.Abs(e.FinalVelocities.ExpansionVelocity.X) > 0.0 ||
Math.Abs(e.FinalVelocities.ExpansionVelocity.Y) > 0.0)
e.Handled = true;
}
答案 1 :(得分:1)
在Mark的指示下,我使用了
private void Border_ManipulationDelta(object sender,
System.Windows.Input.ManipulationDeltaEventArgs e)
{
e.Complete();
_browser.IsHitTestVisible = false;
}