using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms; namespace 浏览器
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
webBrowser1.Navigate(txtAddress.Text);
} private void toolStripButton5_Click(object sender, EventArgs e)
{
webBrowser1.Navigate(txtAddress.Text);
} private void toolStripButton1_Click(object sender, EventArgs e)
{
webBrowser1.GoBack();
} private void toolStripButton2_Click(object sender, EventArgs e)
{
webBrowser1.GoForward();
} private void toolStripButton4_Click(object sender, EventArgs e)
{
webBrowser1.Refresh();
} private void toolStripButton3_Click(object sender, EventArgs e)
{
webBrowser1.Stop();
} private void address_KeyDown(object sender, KeyEventArgs e)
{
if (e.KeyCode == Keys.Enter)
{
webBrowser1.Navigate(txtAddress.Text);
} } private void 退出ToolStripMenuItem_Click(object sender, EventArgs e)
{
MessageBox.Show("将关闭窗口!");
Application.Exit();
} private void baidu_Click(object sender, EventArgs e)
{
//search.Text;
} private void address_Click(object sender, EventArgs e)
{
txtAddress.Focus();
txtAddress.SelectAll();
} private void search_Click(object sender, EventArgs e)
{
search.Clear();
search.Focus();
} private void btnNewPage_Click(object sender, EventArgs e)
{
TabPage tp = new TabPage();
WebBrowser wb = new WebBrowser();
tp.Controls.Add(wb);
wb.Dock = DockStyle.Fill;
tap.Controls.Add(tp);
tap.SelectedTab = tp;
tp.Text = "新页面"; }
private void webBrowser1_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
{
pbWb.Visible = false;
} private void webBrowser1_ProgressChanged(object sender, WebBrowserProgressChangedEventArgs e)
{
if (e.MaximumProgress == )
{
return;
}
pbWb.Visible = true;
//这个才是真的进度条,不是你说+10就可以的
//这个就是进度条 我要改名 命名说了要规范 你的名字都没改 你干嘛?你那个是假进度你不知道?101010101010这是什么
//pbWb.Maximum = 100;
//var value =Convert.ToInt32( e.CurrentProgress / e.MaximumProgress*100); //算百分比
// pbWb.Value = value; if ((e.CurrentProgress > ) && (e.MaximumProgress > ))
{ pbWb.Maximum = Convert.ToInt32(e.MaximumProgress);//设置正在加载的文档总字节数 pbWb.Step = Convert.ToInt32(e.CurrentProgress);////获取已下载文档的字节数 pbWb.PerformStep(); } else if (webBrowser1.ReadyState == WebBrowserReadyState.Complete)//加载完成后隐藏进度条
{ pbWb.Value = ; pbWb.Visible = false; }
}
//这样我们就可以构造一个创建窗口的方法
private void CreateNewTab(string name)
{
TabPage tp = new TabPage(name);//创建一个tabpage
tap.TabPages.Add(tp);//新增一个tabpage 加刚才创建的
WebBrowser wb = new WebBrowser();//这个意思就是 把webbrower 用wb 代替不?新建一个wb控件
wb.Dock = DockStyle.Fill;//设置填充整个父容器
tp.Controls.Add(wb);//把webbrowser放入tabpage里
tap.SelectedTab = tp;//激活当前
} private void webBrowser1_Navigating(object sender, WebBrowserNavigatingEventArgs e)
{
//kasi le
if (e.Url.Equals(new Uri(txtAddress.Text)))
{
return;
}
MessageBox.Show("可以创建心的窗体 你想要的样子 自己开发吧 ,太卡了 。。。。。");
} }
} /*
private void webBrowser1_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
{ pbWb.Visible = false; } private void webBrowser1_ProgressChanged(object sender, WebBrowserProgressChangedEventArgs e)
{
if (e.MaximumProgress == 0)
{
return;
}
pbWb.Visible = true;
//这个才是真的进度条,不是你说+10就可以的
//这个就是进度条 我要改名 命名说了要规范 你的名字都没改 你干嘛?你那个是假进度你不知道?101010101010这是什么
//pbWb.Maximum = 100;
//var value =Convert.ToInt32( e.CurrentProgress / e.MaximumProgress*100); //算百分比
// pbWb.Value = value; if ((e.CurrentProgress > 0) && (e.MaximumProgress > 0))
{ pbWb.Maximum = Convert.ToInt32(e.MaximumProgress);//设置正在加载的文档总字节数 pbWb.Step = Convert.ToInt32(e.CurrentProgress);////获取已下载文档的字节数 pbWb.PerformStep(); } else if (webBrowser1.ReadyState == WebBrowserReadyState.Complete)//加载完成后隐藏进度条
{ pbWb.Value = 0; pbWb.Visible = false; }
}
//这样我们就可以构造一个创建窗口的方法
private void CreateNewTab(string name)
{
TabPage tp = new TabPage(name);//创建一个tabpage
tap.TabPages.Add(tp);//新增一个tabpage 加刚才创建的
WebBrowser wb = new WebBrowser();//这个意思就是 把webbrower 用wb 代替不?新建一个wb控件
wb.Dock = DockStyle.Fill;//设置填充整个父容器
tp.Controls.Add(wb);//把webbrowser放入tabpage里
tap.SelectedTab = tp;//激活当前
} private void webBrowser1_Navigating(object sender, WebBrowserNavigatingEventArgs e)
{
if (e.Url.Equals(new Uri(txtAddress.Text)))
{
TabPage tp = new TabPage();
WebBrowser wb = new WebBrowser();
tp.Controls.Add(wb);
wb.Dock = DockStyle.Fill;
tap.Controls.Add(tp);
tap.SelectedTab = tp;
tp.Text = "新页面"; }
MessageBox.Show("123");
return;
}
}
} */

【C#】浏览器源代码的更多相关文章

  1. Android简单文件浏览器源代码 (转)

    Android简单文件浏览器源代码 (转) activity_main .xml <LinearLayout xmlns:android="http://schemas.android ...

  2. Mac 系统 + Chrome浏览器 网页前端出现中文文字反转或顺序错乱

    问题背景 React开发的系统,收到一个BUG反馈,*"号个人统计"文字不正确,应为"个人号统计"*. 收到BUG后,打开浏览器查验是什么情况,难道犯了最基本的 ...

  3. NPAPI——实现非IE浏览器的类似ActiveX的本地程序(插件)调用

    一.Netscape Plugin Interface(NPAPI) 大致的说明可以看下官方文档Plugin 本文主要针对于JavaScript与插件交互部分做一些交流,比如用于数字证书的操作(淘宝和 ...

  4. JAVA上百实例源码以及开源项目

    简介 笔者当初为了学习JAVA,收集了很多经典源码,源码难易程度分为初级.中级.高级等,详情看源码列表,需要的可以直接下载! 这些源码反映了那时那景笔者对未来的盲目,对代码的热情.执着,对IT的憧憬. ...

  5. FineUIMvc随笔 - 不能忘却的回发(__doPostBack)

    声明:FineUIMvc(基础版)是免费软件,本系列文章适用于基础版. 用户反馈 有网友在官方论坛抛出了这么一个问题,似乎对 FineUIMvc 中的浏览器端与服务器端的交互方式很有异议. 这里面的关 ...

  6. PHP基础(2)

     测试模板 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF ...

  7. Web browser发展演变

    浏览器是指可以显示网页服务器或者文件系统的HTML文件内容,并让用户与这些文件交互的一种软件.网页浏览器主要通过HTTP协议与网页服务器交互并获取网页,这些网页由URL指定,文件格式通常为HTML.大 ...

  8. Angular 开发小妙招1:提交表单数据验证不通过,更改输入组件的样式

    开发表单时,客户端数据完整性校验是必不可少的,在jquery 时代出现了无数的数据验证插件也很好用,开发Angular 应用时,angular 内置了一些常用的数据验证指令.今天要讲的不是这些指令如何 ...

  9. FineUIMvc随笔(3)不能忘却的回发(__doPostBack)

    声明:FineUIMvc(基础版)是免费软件,本系列文章适用于基础版. 用户反馈 有网友在官方论坛抛出了这么一个问题,似乎对 FineUIMvc 中的浏览器端与服务器端的交互方式很有异议. 这里面的关 ...

随机推荐

  1. VIM技巧:选择文本块

    在正常模式下(按ESC进入)按键v进入可视化模式,然后按键盘左右键或h,l键即可实现文本的选择.其它相关命令:v:按字符选择.经常使用的模式,所以亲自尝试一下它. V:按行选择.这在你想拷贝或者移动很 ...

  2. selenium 如何处理table

    qi_ling2005  http://jarvi.iteye.com/blog/1477837 andyguo  http://blog.csdn.net/gzh0222/article/detai ...

  3. perforce 学习资源

    这两天,要将depot切换到stream 使用,收集了很多perforce的学习资源,在这里记录一下: perforce 官网:  www.perforce.com perforce参考手册:  ht ...

  4. docker 相关文章

    https://baijiahao.baidu.com/s?id=1581420975184566963&wfr=spider&for=pc    创建centos基础镜像 https ...

  5. linux 使用supervisor来管理进程

    现在假设一个脚本是,hello.py,内容是 fo = open('xx.txt','w') while 1: fo.write('hello world') print('hi') time.sle ...

  6. 标准JSON格式定义与解析注意点

    标准JSON格式定义与解析注意点 在JS.IOS.Android中都内置了JSON的序列化.反序列化SDK.JEE中也可以使用第三方的JSON解析库,如GSON.虽然在JSON格式被定义出来的时候并没 ...

  7. 使用srvany.exe把程序安装成windows服务的方法

    http://mazhihui.iteye.com/blog/1294431 srvany.exe是什么? srvany.exe是Microsoft Windows Resource Kits工具集的 ...

  8. VSCode------搭建.net core 2.0,并配置到IIS服务器

    前奏 安装VSCode最新版: https://code.visualstudio.com/ 安装window server hosting,发布和部署到IIS使用: https://www.micr ...

  9. js节流函数高级版

    节流函数其主要作用就是防止用户在短时间内多次触发该事件. <!DOCTYPE html> <html lang="en"> <head> < ...

  10. C 修改命令行文本颜色

    #include <Windows.h> #include <stdio.h> int main() { HANDLE h = GetStdHandle(STD_OUTPUT_ ...