2024年2月21日发(作者:)
.NET中winform与webform互相通讯实例,CS调用BS页面的JS函数
时间:2010-05-15 21:38 来源: 作者: 点击:71次
大家都知道.NET可以开发winform与webform页面,有时候在开 发项目过程中要结合BS+CS这样来应用,那么本站做一个实例来测试winform与webform互相通讯的实例,下面先看下效果: winform调用bs页面的js函数效果图 webform页面发送信息到winform效果图 好了,看完
大家都知道.NET可以开发winform与webform页面,有时候在开发项目过程中要结合BS+CS这样来应用,那么本站做一个实例来测试winform与webform互相通讯的实例,下面先看下效果:
winform调用bs页面的js函数效果图
webform页面发送信息到winform效果图
好了,看完上面的效果,下面我们看下如何实现吧。
第一、打开VS2008创建winform项目,之后在MainForm拖入浏览器控件,并命令这个浏览器控件名为:WebContainer
下面是全部CS端代码:
/*
*
* 名称:CS与BS互相通讯
* 作者:cc
* 官方: /chjun2000/
*/
using System;
using c;
using entModel;
using ;
using g;
using ;
using ;
using ;
namespace TestJSWin
{
[ibleAttribute(true)]
public partial class MainForm : Form
{
public MainForm()
{
InitializeComponent();
ForScripting = this; //这句很关键,主要和页面的JS互相操作
Uri uriSale = new
("localhost:8012/"); //浏览器控件默认打开页面
= uriSale;
}
///
/// 菜单点击事件
///
///
///
private void jsEventToolStripMenuItem_Click(object sender,
EventArgs e)
{
te("javascript:fn_test();void(0);");
}
///
/// BS调用方法
///
///
public void JavascriptCall(string strShow)
{
(strShow);
}
}
}
好,做完winform,下面是localhost:8012/页面的做法。
第2、webform的页面,源码很简单,你可以直接复制源代码到本地测试就可以了。下面是HTML页面源代码:
Code []
NET中winform与webform互相通讯实例-(学IT网欢迎你访问)
onclick="fn_call()" />
嗯!到现在为此,所有操作都可以了,非常简单,如果你有兴趣来按上面的代码来测试下
在.net中利用webbrowser控件实现WinForm与WebForm交互
在.net中的WebBrowser 控件可以让你装载Windows Form 应用程序中的Web 网页和其它采用浏览器的文件。可以使用webbrowser 控件将现有的web框架控制项加入至 Windows Form 客户端应用程序。
还是直接看代码吧。
WebBrowser 控制项 提供的属性、方法和事件,可用来实现 Internet
Explorer 的控制项
te(""); //将指定位置处的文件载入至 WebBrowser
();//上一页
ard();//下一页
h();//刷新
();//主页
这里提供了WebBrowser常用的方法,
上面的代码是将 我们园子的主页载入到 WebBrowser控件中。如果我们想要在应用程式中产生自己的网页内容,可以设定DocumentText属性。也可以通过Document属性来处 理目前的网页内容。如下代码是使用 DocumentText
属性,显示网页内容。并用Document属性来处理所显示的网页。
1private void btnDocumentText_Click(object sender, EventArgs e)
2 {
3 string szHtml = @"
4
5
6
7
8
9
10 Please enter your name:
11
Form class
13
14
15";
17 ntText = szHtml;18
19 }
20
21 private void webBrowser1_Navigating(object sender,
WebBrowserNavigatingEventArgs e)
22 {
23 cument document
= nt;
24
25 if (document != null && ["Name"] != null &&
OrEmpty(["Name"].GetAttribute("value")))
26 {
27 = true;
28 ("You must
enter your name before you can navigate to " + ng());
29 }
30
31 }
既 然我们可以通过DocumentText生成自己的网页,那么能不能象使用IE那样操作这个网页呢?,答案是肯定的,完全可以像操作Web程序那样操作
WebBrowser 控制项。比如我们可以加入脚本,CSS。当然,如果你熟悉 HTML
物件对象模型 (DOM),也可以透过 Document 属性来处理目前的Web网页内容。下面的例子加入了JavaScript脚本来控制网页。如果要在Winfrom程序中写大量的Javascriot代 码,而且这些代码最终要转换成String型载入到Webbrowser 那将是很痛苦的事情,不过没有关系,我们可以创建一个js文件,放入资源中,用的时候只需从资源中载入即可。这里我创建一个名为
的文件。
1
