本文将深入探讨如何在C# WPF项目中运用FluentValidation进行属性验证,并展示如何通过MVVM模式实现这一功能。
国内优秀的WPF开源控件库,Panuon.UI的优化版本。一个漂亮的、使用样式与附加属性的WPF UI控件库,值得向大家推荐使用与学习。
此项目应用了Prism MVVM框架,项目展示数据来源于其他服务程序,使用的WebAPI通信,如果要正常运行此程序,需要您自己做一个WebAPI程序,由API接口提供数据驱动,其实直接查看代码最直接,有需要的自己是很方便提取的,即使项目无法运行。
随着信息技术的快速发展,数字化转型已经成为各行各业发展的必然趋势。在航天设计领域,数字化建设也得到了广泛的重视和应用。航天总体设计单位作为航天行业的重要组成部分,其数字化建设对于提升航天产业的核心竞争力具有重要意义。笔者将结合实际项目经历,详细介绍航天总体设计单位的数字化现状,包括数据类型、非结构化数据的治理难度以及自然语言处理技术在非结构化数据处理场景下的典型应用。
上一篇有简单介绍主工程的国际化,使用的资源字典(XAML)实现的。这几天我添加了几个Prism模块(Module),发现子模块使用资源字典的方式实现国际化和本地化不好做,没有找到比较好的参考文章,所以换了一种方式,使用资源文件实现了。
继上篇介绍Bootstrap风格的BlazorUI组件库后,今天我来介绍另一款Blazor UI组件库:一套基于 Ant Design 和 Blazor 的企业级组件库。
有十分漂亮的界面,整个都是 Win10 风,界面部分和默认 UWP 相近, 这个库支持了 .NET Framework 4.5 和以上的版本,以及 .NET Core 3.0 和以上的版本,可以在 Windows Vista SP2 和以上的系统运行。
基于.Net Framework 4.0+、.Net 5、.Net 6 框架的 C# WinForm 开源控件库、工具类库、扩展类库、多页面开发框架。
其实站长很久之前就知道这个开源WPF控件库了,只是一直欣赏不了这种风格,但也star了该项目。每次浏览该仓库时,发现star越来越多,也看到很多网友对它的褒奖,所以今天就向大家推荐这款WPF控件库。
C/S客户端开发完成,需要将程序交付给用户,直接压缩发给用户是可以的(只是有点不专业),如果能有一个比较好看的安装界面,那档次就不一样了。
继上一篇 《如果诸葛亮用C#写出师表...》后,站长想自己的第一语言是Java,虽然平时工作上用的不多,也用Java实现一遍吧,改改就是了
今天站长推荐一款日志可视化组件`LogDashboard`,可以不用安装第三方进程,只需要在项目中安装相应的**Nuget**包,添加数行代码,就可以实现拥有带Web页面的日志管理面板,十分nice哦。
一系列非常简单易用,对Windows API做了极好封装的.NET类库,几乎不用再写繁琐的Windows API转换函数了。
使用Prism做MVVM,优点咱就不说了,主要用了容器注入,消息和DI,比自己写省很多事。网上有很多标准的MVVM的使用方法,但是没有形成一个系统级的框架。本框架从登录到具体业务的使用,还有自动升级都搭建完成
有些教材,博客说到委托都会提到事件,虽然事件是委托的一个实例,但是为了理解起来更简单,今天只谈委托不谈事件。
当 WPF 客户端需要实现插件系统的时候,一般可以基于容器或者进程来实现。如果需要对外部插件实现异常隔离,那么只能使用子进程来加载插件,这样插件如果抛出异常,也不会影响到主进程
SwiftUI 是Apple 新出面向未来、跨多端解决方案、声明式编程
可以编译该项目。整个控件控除了动画函数由Silverlight提取出来和ColorEditorExt.cs颜色面板视图设计器扩展器在网上例子修改而来,其他都是自己在原生控件基础上写的,没有使用任何第三方库,所以放心使用,没有侵犯他人著作权的问题。
WinForms上MVVM技术的必要性,发现要实现MVVM框架其实并不难,关键在于模型(Model)和视图(View)的双向绑定,即模型的改变引起视图内容的改变,而视图的改变也能够引起模型的改变。
简单来说,若是我们不使用Bootstrap 4,而是用手刻的方式来撰写网页,HTML 的内容我们得要自己写(废话),CSS 我们也得要一个一个自己设定(又一个废话),可是若是使用Bootstrap 4 的话,很多常用的CSS 他已经预先帮我们写好了,我们只要熟悉Bootstrap 4 的文件,知道他预写的CSS 是用哪一个class 名,届时只要直接套用到标签上就可以了
笔者对网站的认知为前端、后端及数据库,使用者在浏览器页面按下按钮或是表单请求,触发前端事件,将收集起来的条件打包送往后端
下载Visual Studio后首先建立一个Blazor解决方案,里面建立Blazor Server项目,方案位置可以自己选择(注:新版Visual Studio将Blazor Server跟Blazor WebAssembly的新建项目模板拆分了,较为直观)
由于笔者当初是用ASP.NET Core API + Blazor Server,所以会以Blazor Server示范,日后研究完Blazor WebAssembly会再将心得补上。
我遇到的大多数 Windows 窗体应用程序都不存在或单元测试覆盖率极低。而且它们通常也很难维护,项目中各种 Form 类的代码背后有数百甚至数千行代码,但它不必是这样。
问题来了,为什么Blazor会知道WeatherForecastService在这里可以调用?
自己建立的Service都必须在Startup.cs(Blazor Server)或Program.cs(Blazor WebAssemlby)注册,但有些基本Service就不用自己做了。
现在每次启动项目,预设路径都会是`/`,但我们目前没有Component套用这个路由,要自己切换到`Post`实在有些麻烦,另外Menu的图案也跟名称不符,我们来调整一下。
假如我们想增加的按钮用来清除`form`(表单)的数据,最快的方式是增加一个`type=”reset”`的按钮,这时候就用到两个按钮了,可以用到Blazor的核心概念:组件封装。
现在我们有一个可以输入日志的界面了,但日志就是每天都要写的意思,只有一篇怎么够呢?我们来加上blog。
目前`MyButton`有3个`[Parameter]`,如果再增加的话,又要再定义新的`[Parameter]`,为了避免不断更新这个Component,我们来用Blazor提供的`@attribute`。
昨天不小心把Reset按钮的type改成button,今天改回reset。
Blazor允许您`使用C#`而不是JavaScript`构建交互式`Web UI`。 Blazor应用由可重用的Web UI组件组成,这些组件使用C#、HTML和CSS实现。客户端和服务器代码都是用c#编写的,允许您共享代码和库。
目前的4篇日志是来自我们写好的假数据,但正常来说不会这样做,而是有个按钮让用户点击了之后,增加或减少日志的数量。
不要小看摸鱼,所有天才的点子都不是敲键盘时激发的。在工作遇到阻滞时,越是投入工作越是找不到解决方案,这时候把目光从屏幕挪开,说不定在一边洗澡一边玩着小黄鸭时,一边发呆一边看着窗外时,一边睡觉一边扣肚子时,解决问题的灵感突然就掉进了脑海里。
虽然Blazor 不需要用到JavaScript,但某些已有的js库 还是很方便,不能因为不想用JavaScript 就全部舍弃,Blazor 就提供了调用JavaScript 的方法,这种情况称为JavaScript interoperability(简称JavaScript interop)。这篇就来实现Delete 按钮的提醒窗口,因为删除是很重要的功能,不能让使用者轻轻一按就轻易删除。
本文是使用 WPF 做个 PowerPoint 系列的博客,本文来告诉大家如何解析 PPT 里面的文本描边效果,在 WPF 应用中绘制出来,实现像素级相同
有时候会想对不同Component 做个别样式设置,但如果把class 都写在`wwwroot/css/site.css`,或是针对某个元素改动样式,可能导致改一个就影响全部Component,这种全域冲突是必须避免的,但应该怎么做?
我们现在有了基本的日志,但是每次输入完重新加载页面数据都会重置,因为这些数据都只存在于浏览器,没有真正储存到数据库,为了保存下来,我们要跟数据库连接。
接下来就是讲跟数据库关联的内容了,会着重说明ASP.NET Core 跟EF Core,如果有需要改页面才会说到Blazor,这边会花比较多篇幅着墨。
目前,容器和 Docker 依旧是技术领域最热门的词语,无状态的服务容器化已经是大势所趋,同时也带来了一个热点问题被大家所争论不以:`数据库 MySQL 是否需要容器化?`