Winform控件WebBrowser与JS脚本交互

1)在c#中调用js函数
如果要传值,则可以定义object[]数组。

具体方法如下例子:

首先在js中定义被c#调用的方法:

function Messageaa(message)

      alert(message);
}

在c#调用js方法Messageaa

        private void button1_Click(object sender, EventArgs e)
        {
            // 调用JavaScript的messageBox方法,并传入参数 
            object[] objects = new object[1]; 
            objects[0] = "c# call javascript"; 
            webBrowser1.Document.InvokeScript("Messageaa", objects);
        }
2) 在js中调用c#方法

在js中调用c#方法则相对比较简单:
namespace WindowsFormsApplication1
{
     //申名托管类型,对com是可见的
     [System.Runtime.InteropServices.ComVisible(true)]
}
 private void Form1_Load(object sender, EventArgs e)
 {

修改webbrowser的属性使c#可以调用js方法: 
     webBrowser1.ObjectForScripting = this;
}
首先在c#中定义被js调用的方法:

        public void MyMessageBox(string message)
        {
          MessageBox.Show(message);
        }

在js中调用c#方法:

       <!-- 调用C#方法 -->
       <button οnclick="window.external.MyMessageBox('javascript访问C#代码')" >
       javascript访问C#代码</button>

转载于:https://www.cnblogs.com/IcefishBingqing/p/3431645.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/391863.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

从零开始撸一个Kotlin Demo

####前言 自从google将kotlin作为亲儿子后就想用它撸一管app玩玩&#xff0c;由于工作原因一直没时间下手&#xff0c;直到项目上线后才有了空余时间&#xff0c;期间又由于各种各样烦人的事断了一个月&#xff0c;现在终于开发完成项目分为服务器和客户端&#xff1b;服务器用…

移动平均线ma分析_使用动态移动平均线构建交互式库存量和价格分析图

移动平均线ma分析I decided to code out my own stock tracking chart despite a wide array of freely available tools that serve the same purpose. Why? Knowledge gain, it’s fun, and because I recognize that a simple project can generate many new ideas. Even t…

敏捷开发创始人_开发人员和技术创始人如何将他们的想法转化为UI设计

敏捷开发创始人by Simon McCade西蒙麦卡德(Simon McCade) 开发人员和技术创始人如何将他们的想法转化为UI设计 (How developers and tech founders can turn their ideas into UI design) Discover how to turn a great idea for a product or service into a beautiful UI de…

在ubuntu怎样修改默认的编码格式

ubuntu修改系统默认编码的方法是&#xff1a;1. 参考 /usr/share/i18n/SUPPORTED 编辑/var/lib/locales/supported.d/* gedit /var/lib/locales/supported.d/localgedit /var/lib/locales/supported.d/zh-hans如&#xff1a;more /var/lib/locales/supported.d/localzh_CN GB18…

JAVA中PO,BO,VO,DTO,POJO,Entity

https://my.oschina.net/liaodo/blog/2988512转载于:https://www.cnblogs.com/dianzan/p/11311217.html

【Lolttery】项目开发日志 (三)维护好一个项目好难

项目的各种配置开始出现混乱的现象了 在只有一个人开发的情况下也开始感受到维护一个项目的难度。 之前明明还好用的东西&#xff0c;转眼就各种莫名其妙的报错&#xff0c;完全不知道为什么。 今天一天的工作基本上就是整理各种配置。 再加上之前数据库设计出现了问题&#xf…

leetcode 567. 字符串的排列(滑动窗口)

给定两个字符串 s1 和 s2&#xff0c;写一个函数来判断 s2 是否包含 s1 的排列。 换句话说&#xff0c;第一个字符串的排列之一是第二个字符串的子串。 示例1: 输入: s1 “ab” s2 “eidbaooo” 输出: True 解释: s2 包含 s1 的排列之一 (“ba”). 解题思路 和s1每个字符…

静态变数和非静态变数_统计资料:了解变数

静态变数和非静态变数Statistics 101: Understanding the different type of variables.统计101&#xff1a;了解变量的不同类型。 As we enter the latter part of the year 2020, it is safe to say that companies utilize data to assist in making business decisions. F…

代码走查和代码审查_如何避免代码审查陷阱降低生产率

代码走查和代码审查Code reviewing is an engineering practice used by many high performing teams. And even though this software practice has many advantages, teams doing code reviews also encounter quite a few code review pitfalls.代码审查是许多高性能团队使用…

Zabbix3.2安装

一、环境 OS: CentOS7.0.1406 Zabbix版本: Zabbix-3.2 下载地址: http://repo.zabbix.com/zabbix/3.2/rhel/7/x86_64/zabbix-release-3.2-1.el7.noarch.rpm MySQL版本: 5.6.37 MySQL: http://repo.mysql.com/mysql-community-release-el7-5.noarch.r…

Warensoft Unity3D通信库使用向导4-SQL SERVER访问组件使用说明

Warensoft Unity3D通信库使用向导4-SQL SERVER访问组件使用说明 (作者:warensoft,有问题请联系warensoft163.com) 在前一节《warensoft unity3d通信库使用向导3-建立WarensoftDataService》中已经说明如何配置Warensoft Data Service&#xff0c;从本节开始&#xff0c;将说明…

01-gt;选中UITableViewCell后,Cell中的UILabel的背景颜色变成透明色

解决方案有两种方法一 -> 新建一个UILabel类, 继承UILabel, 然后重写 setBackgroundColor: 方法, 在这个方法里不做任何操作, 让UILabel的backgroundColor不发生改变.写在最后, 感谢参考的出处:不是谢志伟StackOverflow: UITableViewCell makes labels background clear whe…

leetcode 703. 数据流中的第 K 大元素(堆)

设计一个找到数据流中第 k 大元素的类&#xff08;class&#xff09;。注意是排序后的第 k 大元素&#xff0c;不是第 k 个不同的元素。 请实现 KthLargest 类&#xff1a; KthLargest(int k, int[] nums) 使用整数 k 和整数流 nums 初始化对象。 int add(int val) 将 val 插…

不知道输入何时停止_知道何时停止

不知道输入何时停止In predictive analytics, it can be a tricky thing to know when to stop.在预测分析中&#xff0c;知道何时停止可能是一件棘手的事情。 Unlike many of life’s activities, there’s no definitive finishing line, after which you can say “tick, I…

移动认证_如何在移动设备上实施安全的生物特征认证

移动认证by Kathy Dinh凯西丁(Kathy Dinh) 如何在移动设备上实施安全的生物特征认证 (How to implement secure Biometric Authentication on mobile devices) A quick search for React Native biometric authentication would give you several tutorials. That was the fir…

[Luogu1890]gcd区间

原题链接https://www.luogu.org/problem/show?pid1890 暴力中的暴力。 对于每一组询问l..r&#xff0c;我们先循环暴力枚举l..r中最大值到1&#xff0c;再暴力循环l..r的每一个数&#xff0c;判断前一重循环能否整除后一重&#xff0c;如果全部都能&#xff0c;则可判定它就是…

Android Studio自定义模板 做开发竟然可以如此轻松 后篇

###1.概述 最近有很多人反馈&#xff0c;有些哥们不喜欢看文字性的东西&#xff0c;还有一些哥们根本就不知道我在搞啥子&#xff0c;那么以后我就采用博客加视频的方式&#xff0c;我们可以选择看视频讲解&#xff1a;http://pan.baidu.com/s/1i5uh2uD   内涵段子项目资料及…

ExpressionChangedAfterItHasBeenCheckedError: Expression has changed after it was checked.

ExpressionChangedAfterItHasBeenCheckedError: Expression has changed after it was checked. 解决方案&#xff1a; 异步更新&#xff08;建议使用&#xff09;强制进行变更检测&#xff0c;但是会触发子组件的变更检测&#xff0c;再次导致父组件属性改变Parent.Component.…

leetcode 119. 杨辉三角 II

给定一个非负索引 k&#xff0c;其中 k ≤ 33&#xff0c;返回杨辉三角的第 k 行。 在杨辉三角中&#xff0c;每个数是它左上方和右上方的数的和。 示例: 输入: 3 输出: [1,3,3,1] 解题思路 因为杨辉三角的下层由上一层决定&#xff0c;所以只需要保存上一层的元素&#x…

掌握大数据数据分析师吗?_要掌握您的数据吗? 这就是为什么您应该关心元数据的原因...

掌握大数据数据分析师吗?Either you are a data scientist, a data engineer, or someone enthusiastic about data, understanding your data is one thing you don’t want to overlook. We usually regard data as numbers, texts, or images, but data is more than that.…