Hi there 👋

Welcome to my blog

webview2在wpf中的应用

开发环境 运行环境:.Net 6 开发环境:Visual Studio 2022 17.1.3 框架语言:WPF 安装WebView2 通过Package Manager控制台安装 Install-Package Microsoft.Web.WebView2 通过Nuget包管理器安装 !https://s1.ax1x.com/2022/04/09/LinhIe.png 在窗体中添加名字空间: xmlns:wv2="clr-namespace:Microsoft.Web.WebView2.Wpf;assembly=Microsoft.Web.WebView2.Wpf" 引用WebView2控件: <wv2:WebView2 x:Name="webview" Grid.Row="1" Source="<https://www.bilibili.com>" /> 使用WebView2 关于CoreWebView2 💡 Note:默认情况下,如果控件中没有设置Source属性,CoreWebView2是没有初始化的,此时需要我们手动初始化CoreWebView2,CoreWebView2初始化有以下两种方式: 第一种:调用EnsureCoreWebView2Async()方法 if (webView.CoreWebView2 == null) { await webView.EnsureCoreWebView2Async(); } 第二种:为Source属性赋值 webView.Source = new Url("<https://www.bilibili.com>"); 常用设置 从初始化方式说起: var env = await CoreWebView2Environment.CreateAsync(); await webView.EnsureCoreWebView2Async(env); 这和我们最开始讲的初始化相比,多传了一个env变量参数来初始化。这个变量的工厂函数定义如下: public static async Task<CoreWebView2Environment> CreateAsync( string browserExecutableFolder = null, string userDataFolder = null, CoreWebView2EnvironmentOptions options = null) 从以上代码可以看出,这个工厂函数它可以传入三个参数: browserExecutableFolder userDataFolder options 第一个参数是选择Edge Runtime,默认为长绿版本,但我们也可以选择固定版本,当我们要使用固定版本时,需要做以下操作:...

January 18, 2024 · 2 min · 唐璞玉

Rx.NET

编程范式: 编程范式分为命令式编程、声明式编程、函数式编程和响应式编程。 命令式编程: 命令式编程的主要思想是关注计算机执行的步骤,即一步一步告诉计算机先做什么再做什么。 //1. 声明变量 List<int> results = new List<int>(); //2. 循环变量 foreach(var num in Enumerable.Range(1,10)) { //3. 添加条件 if (num > 5) { //4. 添加处理逻辑 results.Add(num); Console.WriteLine(num); } } 声明式编程: 声明式编程是以数据结构的形式来表达程序执行的逻辑。它的主要思想是告诉计算机应该做什么,但不指定具体要怎么做。 var nums = from num in Enumerable.Range(1,10) where num > 5 select num 函数式编程: 主要思想是把运算过程尽量写成一系列嵌套的函数调用。 Enumerable.Range(1, 10).Where(num => num > 5).ToList().ForEach(Console.WriteLine); 响应式编程: 响应式编程是一种面向数据流和变化传播的编程范式,旨在简化事件驱动应用的实现。响应式编程专注于如何创建依赖于变更的数据流并对变化做出响应。 IObservable<int> nums = Enumerable.Range(1, 10).ToObservable(); IDisposable subscription = nums.Where(num => num > 5).Subscribe(Console.WriteLine); subscription.Dispose(); Rx....

January 15, 2024 · 3 min · 唐璞玉