(C#窗体应用程序嵌套web网页)简单教程:利用webBrowser控件展示web网页,以 ...

打印 上一主题 下一主题

主题 578|帖子 578|积分 1734

第一步:创建Form窗体,添加以下控件实现页面根本的布局



webBrowser1控件设置Dock属性为Fill之后,会铺满下面整个panel2

第二步:添加下面代码,主要是点击的时间获取输入的url所在,并将所在赋值给webBrowser1控件

  1. using System;
  2. using System.Collections.Generic;
  3. using System.ComponentModel;
  4. using System.Data;
  5. using System.Drawing;
  6. using System.Linq;
  7. using System.Text;
  8. using System.Text.RegularExpressions;
  9. using System.Threading.Tasks;
  10. using System.Windows.Forms;
  11. namespace Home
  12. {
  13.     // 这个是测试用的 --
  14.     public partial class Form4 : Form
  15.     {
  16.         public Form4()
  17.         {
  18.             InitializeComponent();
  19.             button1.Click += Button1_Click;
  20.             textBox1.KeyUp += textBox1_KeyUp;     //键盘事件
  21.         }
  22.         public void textBox1_KeyUp(object sender, KeyEventArgs e)
  23.         {
  24.             //MessageBox.Show("进来了");
  25.             if (e.KeyCode == Keys.Enter)  //判断是否是Enter按键
  26.             {
  27.                 e.Handled = true;
  28.                 this.Button1_Click(sender, e);
  29.             }
  30.         }
  31.         public void Button1_Click(object sender, EventArgs e)
  32.         {
  33.             string pattern = @"^www\..+\.com$";
  34.             Regex regex = new Regex(pattern);
  35.             bool isUrl = regex.IsMatch(textBox1.Text);  //判断正则是否符合   
  36.             if(isUrl)      
  37.             {
  38.                 Uri uri = new Uri("https://" + textBox1.Text);   //字符串装成url要遵循http的协议
  39.                 webBrowser1.Url = uri;
  40.             }
  41.             else{
  42.                 if (textBox1.Text == "" || textBox1.Text ==null)
  43.                 {
  44.                     return;
  45.                 }
  46.                 MessageBox.Show("您好输入的url格式有误,请重新输入");
  47.                 textBox1.Text = "";
  48.             }
  49.         }
  50.         //webBrowser1.ScriptErrorsSuppressed = true;
  51.         //设置控件的这个属性为true , 就可以解决脚本报错的问题
  52.     }
  53. }
复制代码
这边有几个地方必要注意:
1. 初始化加载的时间会提示脚本报错的题目,可以通过设置webBrowser1.ScriptErrorsSuppressed = true; //设置控件的这个属性为true , 就可以解决脚本报错的题目
2.输入的String格式的所在,要符合new Url();出来的实例要求,必要加上http 或 https协议,上面案例手动添加的,后面根据功能,自己调解格式

第三步:运行,输入url所在,点击跳转或者按键盘Enter键



涉及到的知识点:

 1.正则判断

  1. string pattern = @"^www\..+\.com$";
  2. Regex regex = new Regex(pattern);
  3. bool isUrl = regex.IsMatch(textBox1.Text);  //判断正则是否符合  
复制代码
2.格式转换

  1. Uri uri = new Uri("https://" + textBox1.Text);   //字符串装成url要遵循http的协议
  2. webBrowser1.Url = uri;
复制代码
3.初始化脚本报错

  1. //webBrowser1.ScriptErrorsSuppressed = true;
  2. //设置控件的这个属性为true , 就可以解决脚本报错的问题
复制代码
4.键盘触发事故

  1. textBox1.KeyUp += textBox1_KeyUp;     //键盘事件
  2. public void textBox1_KeyUp(object sender, KeyEventArgs e)
  3.         {
  4.             //MessageBox.Show("进来了");
  5.             if (e.KeyCode == Keys.Enter)  //判断是否是Enter按键
  6.             {
  7.                 e.Handled = true;
  8.                 this.Button1_Click(sender, e);
  9.             }
  10.         }
复制代码
好了,今天分享的内容就到这里,操作也比较简单,感兴趣的码兄都可以试试,祝大家乐成嵌套web页面。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

金歌

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表