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. centos6.5 手动安装gcc

    gcc版本:gcc-4.4.7 rpm -Uvh  mpfr-2.4.1-6.el6.x86_64.rpm rpm -Uvh  cpp-4.4.7-16.el6.x86_64.rpmrpm -Uvh  ...

  2. git 强制刷新,放弃更改

    git fetch --all  git reset --hard origin/master

  3. Python爬虫-什么是爬虫?

    百度百科是这样定义爬虫的: 网络爬虫(又被称为网页蜘蛛,网络机器人,在FOAF社区中间,更经常的称为网页追逐者),是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本.另外一些不常使用的名字还有蚂 ...

  4. repo_file_in_folder

    -- Create table create table repo_file ( uuid ), create_time ), creator ), modify_time ), modifier ) ...

  5. Android沉浸式状态栏兼容4.4手机的实现

    一.概述 最近注意到QQ新版使用了沉浸式状态栏,ok.先声明一下:本篇博客效果下图: 关于这个状态栏变色究竟叫「Immersive Mode」/「Translucent Bars」有兴趣能够去 为什么 ...

  6. SpringMVC由浅入深day02_8json数据交互

    8 json数据交互 8.1 为什么要进行json数据交互 json数据格式在接口调用中.html页面中较常用,json格式比较简单,解析还比较方便. 比如:webservice接口,传输json数据 ...

  7. 8 -- 深入使用Spring -- 4...1 为什么需要AOP

    8.4.1 为什么需要AOP AOP专门用于处理系统中分布于各种模块(不同方法)中的交叉关注点的问题,在Java EE应用中,常常通过AOP来处理一些具有横切性质的系统级服务,如事务管理.安全检查.缓 ...

  8. OpenGl 知识一

    写在前面 啦啦啦,搞了很久的Unity Shaders,越学越觉得基础知识很重要.学Unity Shader的时候,总会想,shader到底是什么呢?shader的pipeline是什么呢?它们是怎么 ...

  9. MySQL用户认证及权限控制

    一.MySQL用户认证: 登录并不属于访问控制机制,而属于用户身份识别和认证: 1.用户名—user 2.密码—password 3.登录mysqld主机—host 实现用户登录MySQL,建立连接. ...

  10. mongo数据库查询结果不包括_id字段方法

    db.GPRS_PRODUCT_HIS_FEE.find({"条件字段" : "412171211145135"},{_id:0}) db.GPRS_PRODU ...