用C#,怎么向浏览器发送信息,让它执行向前或向后的操作,刷新等操作?? 急急

 我来答
百度网友1ecae10
2011-07-12 · TA获得超过118个赞
知道小有建树答主
回答量:147
采纳率:0%
帮助的人:212万
展开全部
C#无法直接控制浏览器的前进或后退,这就要借助于javascript来实现了,你可以利用c#向前台页面中输出javascript,来进行控制,有问题hi交流 。
<input type=button value=前进 onclick=history.go(1)>
<input type=button value=前进 onclick=history.forward()>
<input type=button value=后退 onclick=history.go(-1)>
<input type=button value=后退 onclick=history.back()>
,http协议是无状态的,当客户端发生某个事件后,让它向服务端发送个请求,然后服务端将js代码发给客户端执行。
我想楼主肯定是想解决些其他方面的问题,而不是js控制浏览器的问题,若是其他的问题可以与我交流
追问
就是用C#做一个像鼠标手势的软件,控制浏览器的前进、后退、上下滚屏,关键代码?又怎么用C#调用js
追答
你的意思是说不是用c#做网站,而是要做一个软件当他运行时,可以控制打开的浏览器窗口,可以参考如下内容:
一、c#打开浏览器窗口
public Type tIE=Type.GetTypeFromProgID("InternetExplorer.Application");
public object oIE;
private void button2_Click(object sender, RoutedEventArgs e)
{
object[] oParameter = new object[1];
//tIE = Type.GetTypeFromProgID("InternetExplorer.Application");
oIE = Activator.CreateInstance(tIE);
oParameter[0] = (bool)true;
tIE.InvokeMember("Visible", BindingFlags.SetProperty, null, oIE, oParameter);
oParameter[0] = (string)"http://www.google.com";
tIE.InvokeMember("Navigate2", BindingFlags.InvokeMethod, null, oIE, oParameter);
}
二,C#控制IE浏览器
引入 C:\WINDOWS\System32\mshtml.tlb、Interop.SHDocVw.dll;
public static IHTMLDocument2 GetIHTMLDocument2ByUrl(string url)
{
SHDocVw.ShellWindows shellWindows = new SHDocVw.ShellWindowsClass();
foreach (SHDocVw.InternetExplorer ie in shellWindows)
{
string filename = System.IO.Path.GetFileNameWithoutExtension(ie.FullName).ToLower();
if (filename.Equals("iexplore") && ie.LocationURL == url)
{
return ie.Document as IHTMLDocument2;
}
}
}

通过 GetIHTMLDocument2ByUrl 方法可以获取已打开的IE窗口中指写地址的窗口中的 IHTMLDocument2 对象。
利用这个对象,就可以进行相关操作。
点击按钮
IHTMLDocument2 iHTMLDocument2 = GetIHTMLDocument2ByUrl("http://www.163.com");
HTMLDocumentClass obj = (HTMLDocumentClass)iHTMLDocument2;
IHTMLElement iHTMLElement = null;
IHTMLElementCollection c = obj.getElementsByTagName("input");
foreach (IHTMLElement e in c)
{
if (e.outerHTML.IndexOf("登录") != -1)
{
iHTMLElement = e;
break;
}
}
if (iHTMLElement != null)
{
iHTMLElement.click(); // 点击登录按钮
}
zhaofucai0830
2011-07-12
知道答主
回答量:38
采纳率:0%
帮助的人:23.1万
展开全部
向前:<input type=“button” value="向前" onclick="javascript:history.go(1)" />
向后:<input type=“button” value="向后" onclick="javascript:history.go(-1)">
刷新:<input type=“button” value="刷新" onclick="javascript:history.go(0)">

Javascript刷新页面的几种方法:
1 history.go(0)
2 location.reload()
3 location=location
4 location.assign(location)
5 document.execCommand('Refresh')
6 window.navigate(location)
7 location.replace(location)
8 document.URL=location.href
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
shensenlin
2011-07-12
知道答主
回答量:18
采纳率:0%
帮助的人:7.9万
展开全部
刷新:response.write("<script type='javascript'>location.reload();</script>")
后退:response.write("<script type='javascript'>history.back();</script>")
前进:response.write("<script type='javascript'>history.go(1);</script>")
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2011-07-12
展开全部
不能直接操作 你得通过脚本 执行浏览器对应的功能才行
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
pingfeiyuan
2011-07-12 · TA获得超过4171个赞
知道小有建树答主
回答量:1080
采纳率:46%
帮助的人:462万
展开全部
获取他的窗口
控制他的按钮
发送 点击 命令。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式