二.Winform使用Webview2在Demo1中实现地址简单校验

Winform使用Webview2在Demo1中实现地址简单校验

  • 往期目录
  • 回顾
  • 添加对于的简单url验证提示
  • 通过上节和本节涉及到的函数有

往期目录

往期相关文章目录
专栏目录

回顾

通过一.Winform使用Webview2(Edge浏览器核心) 创建demo(Demo1)实现回车导航到指定地址
我们已经知道了解决资源管理器工具箱属性窗口 。他们都可以通过视图唤出
视图工具栏
也了解了一些基本操作,后面会省过这些步骤

添加对于的简单url验证提示

找到Demo1窗体(通过解决方案资源管理器,找到Demo1.cs双双击打开窗体)然后在窗体上右键查看代码F7打开代码界面。
Demo1构造函数中添加如下代码

//对于不合法的导航路径进行提示
this.mainView2.NavigationStarting += (object sender, CoreWebView2NavigationStartingEventArgs args) =>
{String url = args.Uri;String text = "is not safe, try an https link";if (!url.StartsWith("https://")){this.mainView2.ExecuteScriptAsync($"alert('{url} {text}')");args.Cancel = true;}
};

通过上节和本节涉及到的函数有

  • this.mainView2.ExecuteScriptAsync(xxx)函数
    这个函数就是通过C# 调用 webview 中js函数。
  • url.StartsWith("https://") 判断url字符串以https://开头
    StartsWith方法参考
  • $"{text}" 可以显示text放置到字符串中。相关字符有@""
    如下代码可以看出它们的威力
 //使用$符号前string str1 = string.Format("Today is {0:D}", DateTime.Now);//使用$符号后string str2 = $"Today is {DateTime.Now:D}";
 //使用@符号前 假如有一个路径,我需要一个一个添加`\`进行转移string str1 = "F:\\CSharp\\winform-webview2\\csharp-use-webview2";//使用@符号后 现在特殊字符不需要在转移了string str2 = @"F:\CSharp\winform-webview2\csharp-use-webview2";
  • ()=>{}(参数1,参数..)=>{} lamda表达式 可以百度进行相关了解

往期相关文章目录
专栏目录

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/639952.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

HCIA-HarmonyOS设备开发认证-HarmonyOS简介

目录 前言目标一、HarmonyOS简介1.1、初识HarmonyOS1.2、HarmonyOS典型应用场景 二、HarmonyOS架构与安全2.1、HarmonyOS架构 前言 本章主要介绍HarmonyOS分布式操作系统的概念、关键技术与能力以及HarmonyOS典型的应用场景。 目标 学习完成本课程后,您将能够&…

Vue的指令

Vue的指令 Vue.js 中的指令是一些特殊的标记,用于在模板中指定如何将数据应用到 DOM。 下面是一些基本的 Vue 指令: v-bind: 动态绑定一个或多个属性,或一个组件 prop 到表达式,用于动态绑定 HTML 属性到表达式。常用于绑定 cla…

MySql必知必会

1.什么是BufferPool? Buffer Pool基本概念 Buffer Pool:缓冲池,简称BP。其作用是用来缓存表数据与索引数据,减少磁盘IO操作,提升效率。 Buffer Pool由缓存数据页(Page) 和 对缓存数据页进行描述的控制块 组成, 控制…

树莓派 Linux - 使用ngrok实现内网穿透

官网 :ngrok | Unified Application Delivery Platform for Developers 简单的注册一下即可 我这里的操作系统是kali Linux 选择linux 启动服务最好使用静态域名 把需要穿透的端口号配置为本地的端口号即可 参考视频 没有服务器,就不能上线网站了&am…

HYBBS 表白墙网站PHP程序源码 可封装成APP

源码介绍 PHP表白墙网站源码,可以做校园内的,也可以做校区间的,可封装成APP。告别QQ空间的表白墙吧。 安装PHP5.6以上随意 上传程序安装,然后设置账号密码,登陆后台切换模板手机PC都要换开启插件访问前台。 安装完…

k8s集群master节点的删除和重新加入

一、剔除master1节点 1)删除master1节点 3台master下掉一个,剩下2个master运行基本也没问题。坚持个一两天问题不大。 kubectl drain paas-m-k8s-master-1 --delete-local-data --force --ignore-daemonsets kubectl delete node paas-m-k8s-master-12)…

刚学习的最长不递增子序列的新求法

P1020 [NOIP1999 提高组] 导弹拦截 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 在做这题的时候学到的 我看说是复杂度在O(nlogn)的算法才能通过这题 普通的办法就不行了(之前写过) 然后我去看题解,学了这种新的方法 网址如下&#x…

Unity 工厂方法模式(实例详解)

文章目录 在Unity中,工厂方法模式是一种创建对象的常用设计模式,它提供了一个接口用于创建对象,而具体的产品类是由子类决定的。这样可以将对象的创建过程与使用过程解耦,使得代码更加灵活和可扩展。 工厂模式的主要优点如下&…

深度学习笔记(九)——tf模型导出保存、模型加载、常用模型导出tflite、权重量化、模型部署

文中程序以Tensorflow-2.6.0为例 部分概念包含笔者个人理解,如有遗漏或错误,欢迎评论或私信指正。 本篇博客主要是工具性介绍,可能由于软件版本问题导致的部分内容无法使用。 首先介绍tflite: TensorFlow Lite 是一组工具,可帮助开…

[足式机器人]Part2 Dr. CAN学习笔记- 最优控制Optimal Control Ch07-1最优控制问题与性能指标

本文仅供学习使用 本文参考: B站:DR_CAN Dr. CAN学习笔记 - 最优控制Optimal Control Ch07-1最优控制问题与性能指标

LINUX常用工具之性能分析工具推荐

一、CPU性能分析工具 性能指标 工具 说明 用法举例: 平均负载 Top Uptime Uptime:最简单; Top:提供了更全的指标(平均负载、运行队列、整体的CPU使用率以及每个进程状态和CPU使用率) Top&#xff1a…

Spring+SprinMVC+MyBatis注解方式简易模板

SpringSprinMVCMyBatis注解方式简易模板代码Demo GitHub访问 ssm-tpl-anno 一、数据准备 创建数据库test,执行下方SQL创建表ssm-tpl-cfg /*Navicat Premium Data TransferSource Server : 127.0.0.1Source Server Type : MySQLSource Server Version :…

opendrive-经纬度投影坐标转横轴墨卡托投影坐标

xodr的geoReference标签介绍 经纬度投影 xodr文件projlatlong&#xff0c;说明需要使用经纬度投影代表x,y,z <geoReference>projlatlong ellpsWGS84 datumWGS84</geoReference>xodr文件projtmerc&#xff0c;说明需要使用横轴墨卡托投影(将经纬度投影转为墨卡托投…

【优化技术专题】「性能优化系列」针对Java对象压缩及序列化技术的探索之路

针对Java对象压缩及序列化技术的探索之路 序列化和反序列化为何需要有序列化呢&#xff1f;Java实现序列化的方式二进制格式 指定语言层级二进制格式 跨语言层级JSON 格式化类JSON格式化&#xff1a;XML文件格式化 序列化的分类在速度的对比上一般有如下规律&#xff1a;Java…

选择排序(二)——堆排序(性能)与直接选择排序

目录 一.前言 二.选择排序 2.1 堆排序 2.2选择排序 2.2.1 基本思想 2.2.2直接选择排序 三.结语 一.前言 本文给大家带来的是选择排序&#xff0c;其中选择排序中的堆排序在之前我们已经有过详解所以本次主要是对比排序性能&#xff0c;感兴趣的友友可移步观看堆排&#…

世微AP5179 60V高端电流采样降压恒流驱动器 LED车灯备用灯信号灯

产品描述 AP5179是一款连续电感电流导通模式的降压恒流源&#xff0c;用于驱动一颗或多颗串联LED输入电压范围从 5 V 到 60V&#xff0c;输出电流 可达 2.0A 。根据不同的输入电压和 外部器件&#xff0c; 可以驱动高达数十瓦的 LED。 内置功率开关&#xff0c;采用高端电流采样…

python实现带刷新的文本进度条

进度条已执行的部分使用“**”&#xff0c;未执行的部分使用“--”&#xff0c;用print&#xff08;&#xff09;来完成 使用到的函数&#xff1a; time.sleep(),作用是在程序执行过程中暂停一段时间&#xff0c;即会使程序暂停指定的秒数&#xff0c;然后再继续执行后面的代…

【Unity学习笔记】Unity TestRunner使用

转载请注明出处&#xff1a;&#x1f517;https://blog.csdn.net/weixin_44013533/article/details/135733479 作者&#xff1a;CSDN|Ringleader| 参考&#xff1a; Input testingGetting started with Unity Test FrameworkHowToRunUnityUnitTest如果对Unity的newInputSystem感…

C: CRC16,CRC32 计算代码

说明&#xff1a;CRC16/MODBUS ,CRC32 计算代码 推荐个在线CRC计算网站 http://www.ip33.com/crc.html 1&#xff1a;计算 CRC32 算法代码&#xff1a; //计算CRC32的算法代码&#xff1a; uint32_t crc32(uint8_t *data, uint32_t length) {uint32_t crc 0xFFFFFFFF;uint3…

HTML JavaScript 数字变化特效

效果 案例一&#xff1a;上下滚动 案例二&#xff1a;本身变化 代码 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8" /><meta http-equiv"X-UA-Compatible" content"IEedge" /><met…