What's new in version 0.9.90
============================
- 重写了 Borderless 样式的窗体底层,使用 SkiaSharp 绘制窗体元素
- 删除了 Acrylic 样式,这个样式在部分 Win10 版本以及 Windows 11 中表现得非常 Bug
- 整合了常用的三种资源控制器 EmbeddedFile/LocalFile/DataService 到 NetDimension.NanUI 中,不需要在单独安装这三种资源控制器的依赖。
- 重写了整个 JavaScript 通信系统,简化了通信方式,增加了运行效率
- 异步 JavaScript 绑定中从原先的 Callback 方式升级成 Promise 方式,通过在 JS 中 new Promise(result) 的方式生成可等待的对象,方便使用 ES6 中的新关键字 async/await

Changelog
=========
[2023/2/19]
移除了 Vortice.Direct2D 依赖,现在离屏渲染都是由 SkiaSharp 进行
移除了 Newtonsoft.Json 依赖改用 .NET 默认的 System.Text.Json 进行 JSON 数据的处理。
修改了一些BUG

[2022/07/01]
修改了 Formium 的 WindowHWND 和 OwnerHWND名称:WindowHWND -> WindowHandle,OwnerHWND -> OwnerHandle。都是 IWin32Window 接口成员,方便传统 WinForm 窗体调用。
修改了 JavaScript 绑定中的异步函数逻辑,这个版本在 C# 创建的异步函数可以直接转换成 JavaScript 的 Promise 对象了,无需再在前端手动创建 Promise 对象。结合 JavaScript 新的 async/await 关键字调用异步方法更方便了。
```JavaScript
// 现在 DemoWindow.asyncfunc() 直接返回一个 promise,无需手动创建
DemoWindow.asyncfunc()
    .then(r=>console.log(r))
    .catch(err=>console.log(err));

//或者 
(async ()=> {
    try{
        const result = await DemoWindow.asyncfunc();
        console.log(result);
    }
    catch(e){
        console.log(e);
    }
})();

```

[2022/03/06]
在 Formium 类中加入了 WinFormium.Runtime.Container 的别名 IoC 属性,方便使用依赖注入的朋友快速获取到注入的各种对象或服务。

[2022/02/25]
在 ApplicationConfiguration 中加入了扩展方法 BeforeProcessRun。这个方法传入代理 Func<bool>,用于在 CEF 初始化前执行特定的代码,返回 true 时 NanUI 继续初始化 Chromium;返回 false 将中止当前初始化进程并关闭应用程序。

[2021/12/01]
更新版本至 0.9.90


重要声明
=======
台湾是中国领土不可分割的一部分。
Taiwan is an inalienable part of Chinese territory.