老刘编程
每周分享原创编程技术文章
展开
-
C#泛型(Generic)
C#泛型介绍和使用方法原创 2022-04-30 20:50:13 · 477 阅读 · 0 评论 -
C# Excel数据合并
今天讲一个用C#实现Excel数据合并源码下载地址:https://download.csdn.net/download/ssssswsrjhtdj/18398536预览效果:核心代码:“Excel数据合并”按钮点击代码Stopwatch sw = new Stopwatch(); sw.Start(); //dataGridView1.DataSource = NPOIExcel.ExcelToDataTable("电脑统计表.xlsx",原创 2021-05-05 20:13:33 · 575 阅读 · 0 评论 -
C# 预处理器指令
#if如果 C# 编译器遇到 #if 指令,最终是 #endif 指令,则仅当定义指定的符号时,它才编译这些指令之间的代码。有一个示例,当在Debug调试程序时输出调试模式,否则不输出:#if DEBUG Console.WriteLine("Debug version");#endif仅可使用运算符 ==(相等)和 !=(不相等)测试布尔值 true 或 false。#if 以及 #else、#elif、#endif、#define 和 #undef 指令,允许基于是否存在一个或多个符原创 2021-02-28 15:20:38 · 176 阅读 · 0 评论 -
C# REST客户端
创建应用程序第一步是新建应用程序。 打开命令提示符,然后新建应用程序的目录。 将新建的目录设为当前目录。 在控制台窗口中输入以下命令,创建应用程序:dotnet new console --name WebAPIClient需要将计算机设置为运行 .Net Core。添加新的依赖项将需要此应用程序的 System.Runtime.Serialization.Json 包。 通过运行以下 .NET CLI 命令,将其添加到项目:dotnet add package System.Text.J原创 2021-02-27 10:33:00 · 953 阅读 · 0 评论 -
C#中的继承
继承是面向对象的编程语言的一项功能,可方便你定义提供特定功能(数据和行为)的基类,并定义继承或重写此功能的派生类。什么是继承?继承是面向对象的编程的一种基本特性。 借助继承,能够定义可重用(继承)、扩展或修改父类行为的子类。 成员被继承的类称为基类。 继承基类成员的类称为派生类。C#只支持单一继承。 也就是说,类只能继承自一个类。 不过,继承是可传递的。这样一来,就可以为一组类型定义继承层次结构。 换言之,类型 4 可继承自类型 3,其中类型 3 继承自类型 2,类型 2 又继承自基类类型 1。 由于原创 2021-02-26 21:42:56 · 332 阅读 · 0 评论 -
C#语言集成查询
语言集成查询 (LINQ) 是一系列直接将查询功能集成到 C# 语言的技术统称。 数据查询历来都表示为简单的字符串,没有编译时类型检查或 IntelliSense 支持。对于编写查询的开发者来说,LINQ 最明显的“语言集成”部分就是查询表达式。 查询表达式采用声明性查询语法编写而成。 使用查询语法,可以用最少的代码对数据源执行筛选、排序和分组操作。 可使用相同的基本查询表达式模式来查询和转换 SQL Server 数据库、ADO .NET 数据集、XML 文档和流以及 .NET 集合中的数据等。示例原创 2021-02-26 16:30:47 · 282 阅读 · 0 评论 -
C#索引器
索引器类似于属性。 很多时候,创建索引器与创建属性所使用的编程语言特性是一样的。 索引器使属性可以被索引:使用一个或多个参数引用的属性。 这些参数为某些值集合提供索引。语法可以通过变量名和方括号访问索引器。 将索引器参数放在方括号内:var item = someObject["key"];someObject["AnotherKey"] = item;可以看到属性语法和索引器语法之间的关系。 此类比在索引器的大部分语法规则中进行。 索引器可以使用任何有效的访问修饰符(public、protec原创 2021-02-25 16:57:10 · 203 阅读 · 0 评论 -
C#模式匹配
模式匹配是什么?模式可测试值是否具有特定形状 ,并且可以在值具有匹配形状时从值提取 信息。 模式匹配为当前已使用的算法提供了更简洁的语法。 你已使用现有语法创建了模式匹配算法。 编写了测试值的 if 或 switch 语句。 随后,在这些语句匹配时,可从该值提取并使用信息。 新的语法元素是你已熟悉的语句的扩展:is 和 switch。 这些新扩展将测试值与提取该信息合并在一起。每个几何形状的简单纯数据定义对初学者来说,抽象形状定义以及添加不同的特定形状类比较难,所以接下来来写一个每个几何形状的简单纯数原创 2021-02-25 16:37:25 · 402 阅读 · 0 评论 -
C#弃元
弃元一种在应用程序代码中人为取消使用的占位符变量。 弃元相当于未赋值的变量;它们没有值。 弃元将意图传达给编译器和其他读取代码的文件:你打算忽略表达式的结果。 你可能需要忽略表达式的结果、元组表达式的一个或多个成员、方法的 out 参数或模式匹配表达式的目标。注意:从 C# 7.0 开始,才支持弃元因为只有一个弃元变量,甚至不为该变量分配存储空间。 所以,弃元可以减少内存分配。 弃元使代码意图更加明确。 它们可以增强其可读性和可维护性。通过将下划线 (_) 赋给一个变量作为其变量名,指示该变量为一个原创 2021-02-25 13:32:55 · 868 阅读 · 0 评论 -
C#迭代器
概述编写的几乎每个程序都需要循环访问集合,所以需要编写代码来检查集合中的每一项。还需创建迭代器方法。 这些方法可用于:•对集合中的每个项执行操作。•枚举自定义集合。•扩展 LINQ 或其他库。•创建数据管道,以便数据通过迭代器方法在管道中有效流动。C# 语言提供了适用于这两种方案的功能。 本文概述了这些功能。使用迭代器方法的枚举源借助 C# 语言的另一个强大功能,能够生成创建枚举源的方法。 这些方法称为“迭代器方法” 。可编写此方法以生成从 0 到 9 的整数序列:public IEn原创 2021-02-25 12:04:23 · 191 阅读 · 0 评论 -
C#拖动无边框窗体
设计新建或打开一个窗体应用程序点击窗体属性设置,把边框样式设置为 None添加一个Panel点击Panel1事件(闪电标志)中MouseDown代码[DllImport("user32.dll")]//拖动无窗体的控件 public static extern bool ReleaseCapture(); [DllImport("user32.dll")] public static extern bool SendMessage(IntPt原创 2021-02-25 11:34:30 · 212 阅读 · 0 评论 -
C#生成随机汉字
欢迎阅读老刘讲编程的文章,今天来讲如何生成随机汉字今天吧它制成成了输入速度挑战界面设计界面截图如下核心代码方法CreateRegionCode:public static object[] CreateRegionCode(int strlength) { //定义一个字符串数组储存汉字编码的组成元素 string[] rBase = new String[16] { "0", "1", "2", "3", "4", "5", "原创 2021-02-25 11:34:07 · 711 阅读 · 0 评论 -
C#调用摄像头
添加DLL下载地址:https://download.csdn.net/download/ssssswsrjhtdj/15449179然后添加引用(不包括EXE文件)添加后拖入工具箱,然后添加videoSourcePlayer控件源代码先添加引用:using System;using System.Drawing;using System.Drawing.Imaging;using System.Text.RegularExpressions;using System.Wi原创 2021-02-24 14:21:26 · 2166 阅读 · 0 评论 -
C#修改注册表
程序设计和运行环境以及要准备的工作I>Windows7以上II>VS2019(或2017)命名空间c#修改注册表,需要引用Microsoft.Win32命名空间using Microsoft.Win32;编写时,要用到RegistryKey示例代码以下从‘读’‘写’‘删除’‘判断’四个事例实现对注册表的简单操作1.读取指定名称的注册表的值private string GetRegistData(string name){ string registData;原创 2021-02-24 13:42:20 · 929 阅读 · 0 评论 -
C#接口
概述接口包含非抽象类或结构必须实现的一组相关功能的定义。 接口可以定义 static 方法,此类方法必须具有实现。 从 C# 8.0 开始,接口可为成员定义默认实现。 接口不能声明实例数据,如字段、自动实现的属性或类似属性的事件。例如,使用接口可以在类中包括来自多个源的行为。 该功能在 C# 中十分重要,因为该语言不支持类的多重继承。 此外,如果要模拟结构的继承,也必须使用接口,因为它们无法实际从另一个结构或类继承。可使用 interface 关键字定义接口,如以下示例所示。interface IE原创 2021-02-24 11:20:55 · 443 阅读 · 0 评论 -
C#制作视频播放器(Windows Media Player方法)
本文利用C# 调用Windows自带的Windows Media Player 打造一款属于自己的音乐播放器。概述Windows Media Player是微软公司出品的一款免费的播放器,属于Microsoft Windows的一个组件,通常简称"WMP",支持通过插件增强功能。版本Windows Media Player 12 随 Windows 7及以上提供。可以播放MP3,WMA,WAV等音频文件。本文音乐播放器,主要是MP3文件。涉及知识点1 加载COM组件Windows Media Pla原创 2021-02-24 11:09:49 · 2678 阅读 · 0 评论 -
C#异步编程
异步模型概述异步编程的核心是 Task 和 Task 对象,这两个对象对异步操作建模。 在大多数情况下模型十分简单:•对于 I/O 绑定代码,等待一个在 async 方法中返回 Task 或 Task 的操作。•对于 CPU 绑定代码,等待一个使用 Task.Run 方法在后台线程启动的操作。await 关键字有这奇妙的作用。 它控制执行 await 的方法的调用方,且它最终允许 UI 具有响应性或服务具有灵活性。 虽然有方法可处理 async 和 await 以外的异步代码,但本文重点介绍语言级构原创 2021-02-24 11:06:20 · 299 阅读 · 0 评论 -
C#实现视频播放器
C#实现视频播放器概述使用C#实现播放器,有以下几种方式:1、使用MediaPlayer ActiveX控件;2、使用VLC ActiveX控件3、使用LIB VLC库4、使用FFMPEG库第1、2种,都一定依赖客户端环境。如果客户端较少,可以人工维护的话,可以考虑。第4种,使用ffmpeg,就拥有了更加底层的api了,此时可以实现更加强大的功能。并且它是跨平台的,对于移动平台的音视频开发也是非常有帮助的。今天我们就是采用第3种方式,它不依赖客户端环境,在Github上也有比较完善的对它的封原创 2021-02-23 20:14:05 · 3262 阅读 · 0 评论