【问题标题】:WebBrowser disable copy pasteWebBrowser 禁用复制粘贴
【发布时间】:2011-09-14 21:15:51
【问题描述】:

我有几个关于 WP7 中的 WebBrowser 控件的问题。

  1. 如何禁用点击选词?
  2. 如何通过手势禁用垂直滚动?

【问题讨论】:

  • 您可以在控件上设置 IsHitTestVisible=false 以禁用与它的任何交互。您是否试图保持某些功能可用? IE。链接?
  • @wilmel 您应该将其添加为答案。这不仅是正确的方法,也是使用 WebBrowser 控件的推荐方法!

标签: windows-phone-7 webbrowser-control windows-phone-7.1


【解决方案1】:

为您的 html 页面添加一些额外的样式并在 WebBrowser 控件上呈现它

  1. body {-ms-user-select: none;} 使用这个 css 代码来禁用通过点击来选择单词 在 Windows phone 7/8

  2. 上的 IE
  3. body {-ms-touch-action: none;}使用这个css代码来禁用垂直滚动

    windows phone 7/8 上的 IE

希望这对你有用。

【讨论】:

    【解决方案2】:

    首先,您可以使用可视化树助手获得一个边框控件,它是 ie9 移动内核的容器

    然后

    Q1:你可以取消在边界控制中发生的“Tap”手势,然后它被传递给ie核心

    Q2:你可以取消某个方向或距离的“DragDelta”手势,嗯。垂直滚动。

    【讨论】:

      【解决方案3】:

      复制和过去的答案=“我不相信您可以阻止它发生,除非它是您的网页并且您可以将其设置为只读文档。”-如果我错了,请纠正我。-

      Vertical Scrollable By a Gesture 的答案 =“您可以构建 Gesture 以返回 Null 而不是事件值,几乎可以告诉它,如果发生这种情况然后取消它....Return Nothing!”

      【讨论】:

        【解决方案4】:

        您可以使用javascript实现禁用选择:

        function DisableSelect() { var handler = function (e) {e.returnValue = false;} document.body.attachevent('onselectstart',handler,false);}
        

        而不是从您的代码中调用:

        wb.InvokeScript("DisableSelect");
        

        不要忘记分离事件。

        【讨论】: