
如果你用的是 webbrowser 的话,可以执行js脚本,或者出发页面上的html控件的事件来达到目的:
我不知道你的应该,我列两个你参考一下吧
webBrowser1DocumentGetElementById("userid")InnerText = Account;
webBrowser1DocumentGetElementById("password")InnerText = textBox2Text;
IHTMLDocument2 id2 = webBrowser1DocumentDomDocument as IHTMLDocument2;
IHTMLWindow2 win = id2parentWindow;
winexecScript("CheckAndLogin()", "javascript");
或者执行按钮事件
webBrowser1DocumentGetElementById("card_number")InnerText = Account;
webBrowser1DocumentGetElementById("card_password")InnerText = textBox2Text;
HtmlElement elemButton = webBrowser1DocumentGetElementById("select_order");
mshtmlHTMLInputElement button = (mshtmlHTMLInputElement)(elemButtonDomElement);
buttonclick();
让函数去返回变量的值或触发事件,在C#里调用这个JS函数
string str = webBrowser1DocumentInvokeScript("js函数名", "参数");参考如下代码:
//项目中添加Micrsoftmshtml引用
//Begin temphtm-------
<html>
<head>
<title>demo</title>
<script language="JavaScript" type="text/javascript">
var testText = "Zswang";
function ShowMessage(AText)
{
alert(testText);
alert(AText);
}
</script>
</head>
</html>
//End temphtm-------
using mshtml;
using SystemReflection;
private void button1_Click(object sender, EventArgs e)
{
IHTMLDocument2 vDocument = webBrowser1DocumentDomDocument as IHTMLDocument2;
IHTMLWindow2 vWindow = (IHTMLWindow2)vDocumentparentWindow;
Type vWindowType = vWindowGetType();
object testText = vWindowTypeInvokeMember("testText",
BindingFlagsGetProperty, null, vWindow, new object[] { }); // 读取
ConsoleWriteLine(testText);
vWindowTypeInvokeMember("testText",
BindingFlagsSetProperty, null, vWindow, new object[] { "Zswang 路过" }); // 设置
vWindowTypeInvokeMember("ShowMessage",
BindingFlagsInvokeMethod, null, vWindow, new object[] { 12345 }); // 执行方法
}
private void button2_Click(object sender, EventArgs e)
{
IHTMLDocument2 vDocument = webBrowser1DocumentDomDocument as IHTMLDocument2;
IHTMLWindow2 vWindow = (IHTMLWindow2)vDocumentparentWindow;
vWindowexecScript("ShowMessage(67890);", "JavaScript"); // 执行脚本
}
一般情况下,浏览器中是无法直接和本机的其他的程序进行交互的,在IE中,我们可以通过ActiveX对象的方式进行。但是这个方式只适用于IE浏览器,另一种比较通用的方式便是URL协议的方式,我们将某种URL的协议注册给某个程序来进行处理,比如将tencent://这样的协议注册给QQ程序来进行处理,当浏览器需要访问这样的协议的时候就转给QQ程序进行处理。这种URL协议的方式是可以跨平台的,比如在Windows上你需要添加注册表项。
首先先看看js应该如何调用qq客户端。
window open(" tencent://message/uin=346915968 ")
windowopen顾名思义,打开。Tencent就不用多说了吧 BAT之T。上述能直接打开qq帐号对应的对话框。由此可以知道网页上的在线客服功能是如何实现了吧。
那要是不需要打开对话框,就想要登陆qq应该如何实现呢?很简单呀:
window open(" tencent://message/uin=qq ") 不过调用应用这种跟黑客没什么差别的行为,浏览器一般都是禁止的,
选择允许后,
启动应用,qq客户端就会被调起。
为什么说这个呢,老板又给了个需求,想让调起qq客户端一样,想通过演示页面的一个按钮,调起售票系统的各种程序
什么都不说了,先看看什么是自定义协议。
Pluggable Protocol,又叫URL Protocol,有时会叫Shell命令,通用的Protocol有>
很简单,用字符串查找函数就可以实现了。 当在StrB查找到StrA字符串时,返回肯定是非0的数,值就是True,找不到为0或者-1,值就是Flase 比如: Dim StrA As String = "Time is Limited" Dim StrB As String = "Time" Dim Stu As Boolean= InStr(StrA, StrB) 这运行段代码,Stu值就是True了。 我觉得这样最简单有效。
private static String username="scott";
private static String password="tiger";
private static String url="jdbc:oracle:thin:@1921681100:1521:ORCL";
static{
try {
ClassforName("oraclejdbcdriverOracleDriver");
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
eprintStackTrace();
以上就是关于求C# winform中点击按钮执行网页JS提交表单代码实现~~!全部的内容,包括:求C# winform中点击按钮执行网页JS提交表单代码实现~~!、C#winform WebBrowser怎么获取js中的变量的值怎么触发js的事件、C# winform WebBrowser怎么获取js中的变量的值怎么触发js的事件等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)