- 博客(173)
- 资源 (4)
- 收藏
- 关注
原创 C#提升(二、反射)
C#编写的程序会编译成一个程序集(.DLL或.exe),其中会包含元数据、编译代码和资源,通过反射可以获取到程序集中的信息通俗来讲,反射就是我们在只知道一个对象的外部而不了解内部结构的情况下,可以知道这个对象的内部实现反射:System.Reflection .Net框架提供的帮助类库,可以读取并使用metadata。
2023-06-22 00:50:43 404
原创 C#提升(一、泛型)
泛型,即“参数化类型”我们来看以下代码,目的很明确,就是显示参数类型,这种类似的代码或者说只有参数类型不同,但是功能相同时,我们如何让代码写的更优雅?在泛型没有出现的.Net FrameWork 1.0时代,可以这样来写:我们来看这样子写的,确实更优雅了许多,但是这样子写会有两个问题,至于哪两个问题,看完全文你将得到答案为了代码更加优雅,在.Net FrameWork 2.0时代,出现了泛型。
2023-06-20 21:22:00 1019
原创 WPF 控件 (十八、Geometry)
创建一个资源字典 里面包涵所有的Geometry图形。这次换个写法 xaml代码就只有这一行。如图所示,这里写一个Init函数。
2023-04-24 21:37:13 347
原创 WPF 控件 (十五、时间选择器)
由三个Combox(时、分、秒)和两个TextBlock(::)组成。控件刷新被弹窗阻,需要点击弹窗才会刷新。WPF 没有自带的时间选择器。xaml只需要这一行。
2023-04-15 23:49:17 3545 2
原创 WPF 控件 (三、切换按钮)
与IconButton 基本一样 继承ToggleButton 是为了获得check属性。包含两个Icon 分别用来显示不同点击和默认的状态。没有单独写第二个依赖属性来显示文字 用Name替代。点击时切换 图标和文字显示状态。选中后 白色圆形慢慢滚动到右边。
2023-04-01 23:31:37 1182
原创 【MAUI入门(一、第一个工程)】
NET 多平台应用程序 UI (.NET MAUI) 是一个跨平台框架,用于使用 C# 和 XAML 创建本机移动和桌面应用程序。使用 .NET MAUI,您可以从单个共享代码库开发可在 Android、iOS、macOS 和 Windows 上运行的应用程序。若出现以下问题,是因为没有开启开发人员模式。创建好的工程 自带一个简易的项目。VS2022 比较新的版本。以windows模式启动。选择MAUI负责即可。
2022-09-12 19:06:34 1482
原创 C# DataFlow入门(二、属性配置)
#region 一、DataflowBlockOptions /*** * 1. BoundedCapacity 最大处理数目 设置容量 * 2. CancellationToken 用于提前取消流处理 * 3. MaxMessagesPerTask 控制公平性 多个源,每个源处理相同的任务 * 4. NameFormat 定义Block的名称 * 5. TaskScheduler 任...
2022-05-08 18:59:18 883
原创 C# DataFlow入门(一、九大Block)
一、逻辑 #region 九大block #region 一、bufferblock /** 1. bufferblock 最基础Block 遵循先入先出 Post 添加数据 Recieve 异步处理 */ private BufferBlock<int> m_buffer = new BufferBloc
2022-05-06 21:52:28 1906 2
原创 C# 反射 GetProperties()获取的属性具有随机性
一、问题如题,我在使用GetProperties 去反射其属性名,并写入到本地时,发现经常会顺序莫名其妙的改变经过查找发现是它的返回值并不能保证顺序二、说明根据以下MSDN上的说明:The GetProperties method does not return properties in a particularorder, such as alphabetical or declaration order.GetProperties()这个函数返回的顺序并不能保证是一致的所以如果对其属性
2022-03-28 19:15:53 1157
原创 C#中 路径获取需要注意的问题
一、目录和文件夹的选择1.1 选择文件Microsoft.Win32.OpenFileDialog1.2 选择文件夹FolderBrowserDialog 二、目录选择中注意选择磁盘和磁盘下的文件夹返回的路径不一致选择磁盘D:返回的是 D:选择磁盘D:新建文件夹 返回的是D:\新建文件夹可以看到选择磁盘会多返回一个\因此拼接路径时建议使用Path.Combine()三、判断非法路径3.1 非法字符即判断文件名是否存在不合法的字符if (string.IndexOfAny(Sy
2022-03-28 19:05:08 803
原创 EMGU.CV入门(二十一、图片的素描、卡通、增强、磨皮)
一、效果二、函数说明2.1 细节增强2.2 铅笔2.3 磨皮2.4 卡通三、代码3.1 MainViewModelusing Emgu.CV;using Emgu.CV.CvEnum;using Emgu.CV.Structure;using System;using System.ComponentModel;using System.Drawing;using System.Drawing.Imaging;using System.IO;using System
2022-02-02 21:56:48 2832
原创 WPF+VLC 写一个视频播放器(二、MVVM与界面)
一、MVVM修改结构为MVVM:MainWindow放入View中Xaml做以下修改后台代码做以下修改App.xaml做以下修改:添加MainViewModel类后台代码添加:至此,初步的结构完成。二、界面2.1 启动在屏幕中心2.2 无标题栏2.3 窗口拖动2.4 背景色:黑2.5 Grid的使用界面分成四行:第一行:文件、播放文件名称、最小化、最大化、关闭第二行:视频显示第三行:进度条第四行:播放控制2.6 菜单栏...
2022-01-31 23:47:50 2534
原创 WPF+VLC 写一个视频播放器(一、搭建环境)
一、初识VLC官方网址:https://www.videolan.org/VLC 是一款自由、开源的跨平台多媒体播放器及框架,可播放大多数多媒体文件,以及 DVD、音频 CD、VCD 及各类流媒体协议。VLC Media Player(VLC多媒体播放器),最初命名为VideoLAN客户端,是VideoLAN品牌产品,是VideoLAN计划的多媒体播放器。它支持众多音频与视频解码器及文件格式,并支持DVD影音光盘,VCD影音光盘及各类流式协议。它也能作为unicast或multicast的流式服务器
2022-01-29 18:23:46 4663 1
Log4jTest.zip
2020-07-02
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人