金歌 发表于 2024-9-3 09:34:09

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

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


https://i-blog.csdnimg.cn/blog_migrate/7ddf71794da731d8192d2fdf2319943e.png
webBrowser1控件设置Dock属性为Fill之后,会铺满下面整个panel2

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

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Text.RegularExpressions;
using System.Threading.Tasks;
using System.Windows.Forms;


namespace Home
{
    // 这个是测试用的 --
    public partial class Form4 : Form
    {
      public Form4()
      {
            InitializeComponent();
            button1.Click += Button1_Click;
            textBox1.KeyUp += textBox1_KeyUp;   //键盘事件
      }

      public void textBox1_KeyUp(object sender, KeyEventArgs e)
      {
            //MessageBox.Show("进来了");
            if (e.KeyCode == Keys.Enter)//判断是否是Enter按键
            {
                e.Handled = true;
                this.Button1_Click(sender, e);
            }
      }

      public void Button1_Click(object sender, EventArgs e)
      {
            string pattern = @"^www\..+\.com$";
            Regex regex = new Regex(pattern);
            bool isUrl = regex.IsMatch(textBox1.Text);//判断正则是否符合   
            if(isUrl)      
            {
                Uri uri = new Uri("https://" + textBox1.Text);   //字符串装成url要遵循http的协议
                webBrowser1.Url = uri;
            }
            else{
                if (textBox1.Text == "" || textBox1.Text ==null)
                {
                  return;
                }
                MessageBox.Show("您好输入的url格式有误,请重新输入");
                textBox1.Text = "";
            }
      }
      //webBrowser1.ScriptErrorsSuppressed = true;
      //设置控件的这个属性为true , 就可以解决脚本报错的问题
    }
}
这边有几个地方必要注意:
1. 初始化加载的时间会提示脚本报错的题目,可以通过设置webBrowser1.ScriptErrorsSuppressed = true; //设置控件的这个属性为true , 就可以解决脚本报错的题目
2.输入的String格式的所在,要符合new Url();出来的实例要求,必要加上http 或 https协议,上面案例手动添加的,后面根据功能,自己调解格式

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

https://i-blog.csdnimg.cn/blog_migrate/160e4de8a7513777d6063cfe21a0a007.png

涉及到的知识点:

 1.正则判断

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

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

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

textBox1.KeyUp += textBox1_KeyUp;   //键盘事件

public void textBox1_KeyUp(object sender, KeyEventArgs e)
      {
            //MessageBox.Show("进来了");
            if (e.KeyCode == Keys.Enter)//判断是否是Enter按键
            {
                e.Handled = true;
                this.Button1_Click(sender, e);
            }
      } 好了,今天分享的内容就到这里,操作也比较简单,感兴趣的码兄都可以试试,祝大家乐成嵌套web页面。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页: [1]
查看完整版本: (C#窗体应用程序嵌套web网页)简单教程:利用webBrowser控件展示web网页,以