zoukankan      html  css  js  c++  java
  • WPF 解决内置谷歌浏览器(Cef.ChromiumWebBrowser)在触摸屏无法进行滚动的问题

    1.问题描述:

      最近在WPF的项目中,需要在控件中嵌套可以浏览特定网页的内容,所以使用了 Cef.ChromiumWebBrowser来解决问题。在执行项目的过程中,主要碰到的问题有:

      1.1 当把项目拷贝到其他可触摸使用的显示器上面时,会导致无法对界面进行滚动,只能通过滚动界面上的滚动条对界面进行滚动。

    2.解决方法:

      搜索了大量的资料,解决此问题目前有以下两种解决方案:

      2.1 设置触摸屏相应的触摸事件,通过触摸事件改变的坐标的偏移量,再对界面执行相应偏移量的滚动。

          使用此方法,会导致当你在界面滑动的时候,会将当前界面的部分内容更改为选中状态,暂时没有找到可去除选中内容的方法,故采用另一种方法实现。

      2.2 在界面添加”向下滚动“以及向上滚动两个按钮,当点击”向下滚动“按钮的时候,当前界面向下滚动指定的偏移量,偏移量可自行设置,我这里设置的偏移量为 100,实现界面进行滚动的方式也很简单,只需要在当前界面异步调用自定义的脚本语言即可。如下所示(表示界面向下滚动100的偏移量):

        ChromiumWebBrowser.GetBrowser().MainFrame.ExecuteJavaScriptAsync("window.scrollBy(0,100);");

    3.感悟:

      因为最近在做此类型相关的内容,也是找了很久的资料,才确定最终的解决方法,在网上也没有统一的解决方案,所以写了相应的内容,希望下一个和我一样的人能够早些解决此类问题,哈哈。

    ============== 转载请备注出处 ================================

  • 相关阅读:
    一,初次接触html+css需要注意的小问题
    Pycharm如何在控制台输出窗口中使用Python解释器
    Silver Cow Party POJ
    Constructing Roads POJ
    小希的迷宫 HDU
    Wireless Network POJ
    Scanner读取记事本文件内容为空的解决办法
    mysql limit的使用方法
    Can you find it? HDU-2141 (二分查找模版题)
    【2028-07-18】精力是有限的,但智慧是无限的
  • 原文地址:https://www.cnblogs.com/HGSJJ/p/HGSJJ.html
Copyright © 2011-2022 走看看