WebKit.Netwinform程序中c#与js怎样互调

本篇文章为大家展示了WebKit.Net winform程序中c#与js怎样互调,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。

创新互联是一家集网站建设,黄石企业网站建设,黄石品牌网站建设,网站定制,黄石网站建设报价,网络营销,网络优化,黄石网站推广为一体的创新建站企业,帮助传统企业提升企业形象加强企业竞争力。可充分满足这一群体相比中小企业更为丰富、高端、多元的互联网需求。同时我们时刻保持专业、时尚、前沿,时刻以成就客户成长自我,坚持不断学习、思考、沉淀、净化自己,让我们为更多的企业打造出实用型网站。

实验1:

按钮1事件:

currentPage.browser.DocumentText =
                "Test Page" +
                "

Hello, World!

" +
                "

A

B

C

" +
                "" + 
                "

按钮2事件:

currentPage.browser.StringByEvaluatingJavaScriptFromString("f()");

这样当点击按钮1然后再点击按钮2则会跳到pudn中。实验成功。

实验2:

tomcat的webapps/ROOT下有一个index.html文件:




    
    Title


Hello, World!

A

B

C

hello world spring boot3 function f() { window.open('https://www.baidu.com', 'myWindow'); }

在按钮事件中:

currentPage.browser.IsScriptingEnabled = true;

currentPage.browser.StringByEvaluatingJavaScriptFromString("f()");

能成功跳到baidu.能执行browser_NewWindowRequest和browser_NewWindowCreated事件,但不能执行browser_DocumentCompleted,除非browse执行刷新操作。

https://bbs.csdn.net/topics/390962337/ 和 https://sourceforge.net/p/webkitdotnet/discussion/939856/thread/daaed049/ 有说64位的BUG,或多线程的原因,我做的实验都是异常。

        private void newWindowToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (MessageBox.Show("This is likely to cause a crash. Continue?",
                "Warning", MessageBoxButtons.YesNo, MessageBoxIcon.Warning) == DialogResult.Yes)
            {
                var thread = new Thread(new ThreadStart(MyThread));
                thread.SetApartmentState(ApartmentState.STA);
                thread.Start();
            }
        }

        private void MyThread()
        {
            Application.Run(new MainForm());
        }

好象这样设置了ApartmentState.STA也不起作用。

上述内容就是WebKit.Net winform程序中c#与js怎样互调,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注创新互联行业资讯频道。


文章名称:WebKit.Netwinform程序中c#与js怎样互调
文章位置:http://ybzwz.com/article/piojgs.html