WPF 使用ChromiumWebBrowser 嵌套一个JSP的页面之后,页面总是闪烁,有没有人有类似问题,或知道解决办法

问题描述

//WebViewHelper类usingCefSharp;usingCefSharp.Wpf;usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Text;usingSystem.Threading.Tasks;namespaceYaMiClient{publicclassWebViewHelper{privatestaticChromiumWebBrowserwebBrowser;privatestaticobject_lock=newobject();privateWebViewHelper(){}publicstaticvoidSetInit(){if(Cef.IsInitialized)return;Cef.Initialize(newCefSettings(){PersistSessionCookies=true});}publicstaticvoidSetDispose(){Cef.Shutdown();}publicstaticChromiumWebBrowserGetWebBrowser(){if(webBrowser==null){lock(_lock){if(webBrowser==null){webBrowser=newChromiumWebBrowser();}}}returnwebBrowser;}publicstaticvoidSetAddress(stringaddress){if(webBrowser==null)GetWebBrowser();webBrowser.Address=address;}publicstaticvoidSetCookies(stringurl,stringdomain,Dictionary<string,string>cookies,DateTimedateTime){Cef.GetGlobalCookieManager().SetStoragePath(Environment.CurrentDirectory,true);cookies.ToList().ForEach(c=>{Cookiecookie=newCookie();cookie.Creation=DateTime.Now;cookie.Domain="";cookie.Name=c.Key;cookie.Value=c.Value;cookie.Expires=dateTime;Task<bool>task=Cef.GetGlobalCookieManager().SetCookieAsync("http://123.57.7.202/yamiap",cookie);while(!task.IsCompleted){continue;}boolb=task.Result;});}}}

下面是加载的页面的代码usingSystem;usingSystem.Collections.Generic;usingSystem.Collections.ObjectModel;usingSystem.Linq;usingSystem.Text;usingSystem.Windows;usingSystem.Windows.Controls;usingSystem.Windows.Data;usingSystem.Windows.Documents;usingSystem.Windows.Input;usingSystem.Windows.Media;usingSystem.Windows.Media.Imaging;usingSystem.Windows.Navigation;usingSystem.Windows.Shapes;usingYaMiClient.Framework;usingYaMiClient.Models;namespaceYaMiClient.Views.WorkViews{[Screen(Name="WorkList")]///<summary>///WorkList.xaml的交互逻辑///</summary>publicpartialclassWorkList:ChildScreen{privateObservableCollection<NavigationModel>navigationSource;publicObservableCollection<NavigationModel>NavigationSource{get{if(navigationSource==null)navigationSource=newObservableCollection<NavigationModel>();returnnavigationSource;}set{SetProperty<ObservableCollection<NavigationModel>>(refnavigationSource,value,()=>this.NavigationSource);}}publicWorkList(){InitializeComponent();//保证窗体显示在上方。NavigationSource=newObservableCollection<NavigationModel>();NavigationSource.Add(newNavigationModel(){NavigationName="动态",Url="http://123.57.7.202/yamiapi/wechat/dynamic/alldongtai.jsp",NavigationImage="pack://application:,,,/Assets/WorkImage/Dynamic.png",IsWebBroswer=true});NavigationSource.Add(newNavigationModel(){NavigationName="日历",Url="http://123.57.7.202/yamiapi/wechat/calendar/calendarList.jsp",NavigationImage="pack://application:,,,/Assets/WorkImage/Calendar.png",IsWebBroswer=true});NavigationSource.Add(newNavigationModel(){NavigationName="任务",Url="http://123.57.7.202/yamiapi/wechat/task/myUnfinishedList.jsp",NavigationImage="pack://application:,,,/Assets/WorkImage/Task.png",IsWebBroswer=true});NavigationSource.Add(newNavigationModel(){NavigationName="通知",Url="http://123.57.7.202/yamiapi/wechat/notice/gu_dtzliebiao.jsp",NavigationImage="pack://application:,,,/Assets/WorkImage/Notice.png",IsWebBroswer=true});NavigationSource.Add(newNavigationModel(){NavigationName="群组",Url="http://123.57.7.202/yamiapi/wechat/group/aqzliebiao.jsp",NavigationImage="pack://application:,,,/Assets/WorkImage/Group.png",IsWebBroswer=true});NavigationSource.Add(newNavigationModel(){NavigationName="知识库",Url="http://123.57.7.202/yamiapi/wechat/repository/fileList.jsp",NavigationImage="pack://application:,,,/Assets/WorkImage/Knowledge.png",IsWebBroswer=true});NavigationSource.Add(newNavigationModel(){NavigationName="审批",Url="http://123.57.7.202/yamiapi/wechat/apply/fshenpi.jsp",NavigationImage="pack://application:,,,/Assets/WorkImage/Approval.png",IsWebBroswer=true});NavigationSource.Add(newNavigationModel(){NavigationName="工作报告",Url="http://123.57.7.202/yamiapi/wechat/workpaper/mySendList.jsp",NavigationImage="pack://application:,,,/Assets/WorkImage/WorkReport.png",IsWebBroswer=true});NavigationSource.Add(newNavigationModel(){NavigationName="资讯",Url="http://123.57.7.202/yamiapi/wechat/consultation/zixunall.jsp",NavigationImage="pack://application:,,,/Assets/WorkImage/Refer.png",IsWebBroswer=true});NavigationSource.Add(newNavigationModel(){NavigationName="打卡",Url="http://123.57.7.202/yamiapi/wechat/punchcard/byiji.jsp",NavigationImage="pack://application:,,,/Assets/WorkImage/PunchCard.png",IsWebBroswer=true});NavigationSource.Add(newNavigationModel(){NavigationName="聊天",Url="http://182.92.97.9/yamiweb/huanxin-webim2/index2.html#",NavigationImage="pack://application:,,,/Assets/WorkImage/PunchCard.png",IsWebBroswer=true});}publicoverridevoidOnActivity(){base.OnActivity();}privatevoidListBox_SelectionChanged(objectsender,SelectionChangedEventArgse){vartarget=senderasListBox;if(target==null)return;varitem=target.SelectedItemasNavigationModel;if(item==null)return;Dictionary<string,object>parameter=newDictionary<string,object>();parameter.Add("NavigationUri",item.Url);parameter.Add("Title",item.NavigationName);Activate("WorkDetail",parameter);}}}

主要就是用单例模式,实现web端已实现功能的直接嵌套,不知道为什么加了页面之后就一直闪烁

解决方案

解决方案二:
同问~~~有人知道么

时间: 2024-11-10 13:01:39

WPF 使用ChromiumWebBrowser 嵌套一个JSP的页面之后,页面总是闪烁,有没有人有类似问题,或知道解决办法的相关文章

打开页面遇到当前网页正在试图打开你的受信任的站点解决办法

  打开页面遇到当前网页正在试图打开你的受信任的站点解决办法 1.打开浏览器的工具栏目,选择Internet选项. 2.在弹出的页面 中选择安全,然后在点击可信任站点-站点. 3.在选择网站下面的地址,点击右边的删除就可以了.

myEclipe的一个bug 缺少引用的包时出现不能生成编译后的class文件的解决办法

版本:myeclipse7.5    出现原因:    删除掉实现设置的 构建路径中的jar     现象:    不能编译生成class   解决办法: 进入项目属性设置,构建路径,remove掉不存在的jar引用,即可.      

分页-请教一个JSP页面中&amp;amp;lt;script&amp;amp;gt;里嵌套JAVA语句的问题

问题描述 请教一个JSP页面中<script>里嵌套JAVA语句的问题 我想在script里嵌套JAVA语句,接收从另一个页面传来的变量,然后根据他来决定下面的一个span的显示方式 其实就是想通过JS做一个分页的上一页下一页的显示,比如在第一页的时候,上一页的链接隐藏,当只有一页的时候,上一页下一页都隐藏,最后一页的时候下一页隐藏,就是这种效果 大致的代码如下,请问该怎么改怎么,两个从request中取的值都是可以取到的,已经在下面当前页数:X / Y显示了,但是这段代码没有达到预期效果 v

如何在一个JSP页面中调用另一个JSP页面中的变量

在jsp学习中,经常需要在一个jsp页面中调用另一个jsp页面中的变量,下面就这几天的学习,总结一下. jsp页面之间的变量调用有多种方法: 1.通过jsp的内置对象-request对象获取参数: (1)通过超链接传参: 例:把a.jsp中i的值传到b.jsp中: 在a.jsp页面中的核心代码为: <a href="b.jsp?i=1">传参</a>     (说明:给i赋值时也可以用jsp表达式,例如i=<%变量名 %>) 在b.jsp页面中的核心

一个JSP页面导致的tomcat内存溢出的解决方法

 今天新能测试组的同事找我看一个奇怪的现象.一个tomcat应用,里面只有一个单纯的jsp页面,而且这个jsp页面没有任何java代码(想用这个jsp页面测试在她的服务器上的一个tomcat的最大QPS).但是用loadrunner压测了几分钟之后,分配了1024M堆内存的tomcat居然包heap space outofmemory!这个页面的代码如下:   代码如下: <%@ page language="java" contentType="text/html;

jsp javawe...-怎么从一个jsp页面跳转到另一个jsp,有哪些方法,不经过action?

问题描述 怎么从一个jsp页面跳转到另一个jsp,有哪些方法,不经过action? 怎么从一个jsp页面跳转到另一个jsp,有哪些方法,不经过action?用<a >? 解决方案 最简单的方法,在index.jsp页面写一个JS跳转到你的action.简单的JSP跳转问题:从一个JSP跳转到另一个JSP的Action应该怎么写?struts2 从一个action 跳转到另一个action的两种方法 解决方案二: 直接访问xxxxx.jsp 解决方案三: sendRedirect 重定向

jquery插件-ligerdialog.open打开一个jsp页面显示不了

问题描述 ligerdialog.open打开一个jsp页面显示不了 <a href="javascript:void(0)" class="easyui-linkbutton" iconCls="icon-ok" onclick="create_page_div()">创建</a> function create_page_div(){ $.ligerDialog.open({ url: 'BomNe

bootstrap-如何把jsp页面头部中那些加载css、js的命令提取出来放在一个jsp页面里

问题描述 如何把jsp页面头部中那些加载css.js的命令提取出来放在一个jsp页面里 是这样的我要做好几个jsp页面,都使用bootstrap作为前端框架 于是在每个jsp页面的 head>中都有这么一大段加载命令: <link href="css/charisma-app.css" rel="stylesheet"> <link href='bower_components/fullcalendar/dist/fullcalendar.c

新手 帮忙 网页-用一个JSP页面编写一个猜数字游戏

问题描述 用一个JSP页面编写一个猜数字游戏 系统内部生成一个0-100之间的随机数,提供一个表单让用户来猜这个数字是多少,若猜大了,出现"大了"的提示,若猜小了,出现"小了"的提示,直到用户猜到正确的数字时,提示"猜对了!",并统计用户猜了几次才猜对. 我的代码: **<%@ page language="java" import="java.util.*" pageEncoding="U