![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C#
文章平均质量分 56
主要是一些C#相关的Demo示例
无所谓จุ๊บ
这个作者很懒,什么都没留下…
展开
-
WPF动画的使用
前言弹幕是什么?这里是使用动画将控件弹起来,通过C#提供的多样化动画类型,我们可以制做出丰富的界面效果。主要有基于时间的动画和基于属性的动画。原创 2024-08-09 17:30:00 · 277 阅读 · 0 评论 -
WPF中的图形对象
在WPF中可以根据需要在前台绘制自己所需要的几何开状,可设置性很丰富,而且在xaml中很好的实时性,如果是设计时还可以考虑使用Blend for Visual Studio来添加元素,它的设计交互性更高。原创 2024-08-09 16:00:00 · 1093 阅读 · 0 评论 -
C#三种并行执行方案对比
有时候我们需要多个任务同时执行,有的人喜欢用线程Thread,有的人喜欢使用Task,还有的人喜欢用ThreadPool,这里就测试下他们三都同时运行同样逻辑的性能表现。任务数量1000,任务内容为读取1张图像并处理,有100m延时逻辑,记录了启动时间、工作时间、总计用时等信息。原创 2024-08-07 18:00:00 · 219 阅读 · 0 评论 -
利用Ping监控某个IP状态
在上位机的开发过程中,有时需要增加一些心跳或者网络监控方式,利用Ping可以确定远程计算机是不可访问网络,日志记录异常情况,当然也可以扩展,比如:再把错误信息上报等。原创 2024-08-07 12:00:00 · 206 阅读 · 0 评论 -
在WPF在做一个图像列表
有一些场景,需要展示一组图像,可能还需要加一些标识信息,然后对控件大小也要控制,这时就需要我们动手改造原生控件,这里我是结合布局虚拟化逻辑再加上控件模板的改造来实现。原创 2024-08-06 17:45:00 · 372 阅读 · 0 评论 -
利用OpenCvSharp进行图像相关操作
程序设计过程,有时也需要对图像进行一些简单操作,C#没有现成的图像处理库,但有人对OpenCV进行了包装,我们可以很方便的使用OpenCvSharp对图像进行操作。当然了,这也需要使用的人员进行一些研究,但相对于C++版本,它已经非常友好了。原创 2024-08-06 11:30:00 · 823 阅读 · 0 评论 -
C#针对kernel32.dll的一些常规使用
Window是一个复杂的系统,kernel32是一个操作系统的核心动态链接库文件。它提供了大量的API函数,提供了操作系统的基本功能。原创 2024-08-05 18:00:00 · 404 阅读 · 0 评论 -
C#通过7Z解压和压缩文件
在网络情况不够良好或者网速受限情况下,传输文件时,一般考虑使用压缩算法对文件进行压缩。7z压缩是一个压缩率比较高的软件,我们可以通过他来处理我们的文件。主要有两种方式进行压缩:方式1,直接通过调用库方式,可以在网上找到他的库算法;方式2,通过CMD命令行模式调用。原创 2024-08-05 15:17:04 · 442 阅读 · 0 评论 -
C#根据反射操作对象
反射使用,让我们的程序可以动态增加一些功能,让原本固化的步骤逻辑变得动态,这是它的优点。当然使用反射首次加载会有性能损耗以及使用复杂;但是现在大家都在讲动态,使用好它应该是一个重要的编程理念提升。MVC、ORM、IOC、AOPA都有使用这个东西了。如果要考虑性能,可以考虑缓存程序集,我们保证程序只加载一次就好。原创 2024-08-04 12:00:00 · 169 阅读 · 0 评论 -
C#对Sqllite操作
数据库的操作也是程序设计中的家常便饭了,关系型数据库中Sqlite3是非常轻量级别的,所以这个数据在小型应用程序的设计中占用很高的比重。当然我这里描述的是1.0版本,也是最原始的方案,大型应用开发中一般选择EF进行桥接,当然我认为其低层逻辑是一致,只是由它帮忙写好了调用的逻辑。原创 2024-08-03 15:15:00 · 267 阅读 · 0 评论 -
C#中XML的序列化与反序列化使用
正如前面提到,程序配置信息的保存,除了有Json、Ini外,还有一种文件格式是比较好的,那就是XML数据格式,它的可读可写性也是比较友好的,C#也为其提供了解析类库,开发者只需要根据实际业务场景进行选择对应函数即可。原创 2024-08-03 11:30:00 · 303 阅读 · 0 评论 -
C#中Json的序列化与反序列化使用
在我们开发应用程序的过中,或多或不的需要记录一些配置信息;使用Json可以快速将我们程序中的对象信息保存在文件中,程序启动后又可以快速通过文件恢复原来的配置信息;当然了,我们也可以使用INI文件,但这个配置方式的文件读写是没有Json方便的。原创 2024-08-02 17:30:00 · 130 阅读 · 0 评论 -
WinForm中使用Bitmap元素处理图像
这个Bitmap元素在我们处理图像显示相关时,它的身影就可以见到了。官方术语:封装 GDI+ 位图,此位图由图形图像及其属性的像素数据组成。Bitmap是用于处理由像素数据定义的图像的对象。操作对象最重要的两个方法GetPixel和SetPixel。原创 2024-08-02 12:00:00 · 271 阅读 · 0 评论 -
WinForm中使用Graphics画元素
有时候我们需要在一个图像上显示一些文字,或者画一些标志,这就想我们平时截图也需要做一些描述信息。在C#中我们可以Graphics这个对象来绘制自己所需要描述的信息,当然在WPF中的它的设计思路又不一样了,在WPf中考虑使用的矩形控件等元素进行标注。他的前台界面设计更加丰富。在这里仅是演示在WinForm中,通过PictureBox控件来画出一些元素。原创 2024-08-01 18:00:00 · 443 阅读 · 0 评论 -
设计理念中——抽象与接口和用(C#)
在程序设计中,使用抽象类还是用接口应该是一个需要考虑的场景,有时我们感觉这两者并没有太大的区别,有时又有很大区别。这里是一些说明和示例。原创 2024-08-01 11:30:00 · 394 阅读 · 0 评论 -
点菜吧——随便点 C#生成套餐
一到食堂发现有多种选择,但是有一个固定的套路,只能是一个荤,二个小荤,菜品数量也不少,任君选择,如果是一个选择困难症,就有点烦了,所以出品这个自动生成套餐软件。各位老板可以选菜了,还可以拆除一些不想要的菜,不勾选的菜就不会被选择。原创 2024-07-31 16:30:00 · 406 阅读 · 0 评论 -
c#中使用数据验证器
在很多情况下,用户的输入不一定满足我们的设计要求,需要验证输入是否正确,传统的方案是拿到控件数据进行逻辑判定验证后,给用户弹窗提示。这种方法有点职责延后的感觉,数据视图层应该很好的处理用户的输入。使用数据验证器,就可以友好的提示错误信息,让后端不用过多的验证数据正确性。原创 2024-07-31 11:30:00 · 202 阅读 · 0 评论 -
通过进程协作显示图像-C#
如果一个软件比较复杂或者某些情况下需要拆解,可以考试将软件分解成两个或多个进程,但常规的消息传递又不能完全够用,使用消息+共享内存,实现图像传递,当然性能这个方面我并没有测试,仅是一种解决思路吧。原创 2024-07-30 17:15:00 · 844 阅读 · 0 评论 -
C#中WebView2调用与交互实现
此控件实际上是 [WebView2 COM API] (https://aka.ms/webview2) 的包装器。可以通过访问 Microsoft.Web.WebView2.Wpf.WebView2.CoreWebView2 属性来直接访问基础 ICoreWebView2 接口及其所有功能。一些最常见的 COM 功能也可以通过控件上的包装器方法/属性/事件直接访问。创建时,控件的 Microsoft.Web.WebView2.Wpf.WebView2.CoreWebView2 属性将为 null。原创 2024-07-30 14:00:00 · 400 阅读 · 0 评论 -
C#编写软件发布公告2——服务端
/关联日志文件写}));//配置DBServer。原创 2024-07-29 17:30:00 · 1159 阅读 · 0 评论 -
C#编写软件发布公告1——客户端
软件或者生活中有时需要将信息同步至电子公告板上,利用C#可以快速实现这一目的,这里以软件公告场景设计,主要是将软件的版本号等相关信息同步至服务器,同步成功后,任务需要查找的人员只要有Web浏览器就可以快速查看更新信息;如果在社区公告场景也可以如法炮制。原创 2024-07-29 11:18:41 · 468 阅读 · 0 评论 -
C#中foreach Linq AsParallel三者在查找数据中的奇妙现象
当数据量为:2^10。当数据量为:2^20。当数据量为:2^25。当数据量为:2^28。原创 2023-11-18 11:00:37 · 92 阅读 · 0 评论 -
C#编写CS架构的基础实现
处理消息回调事件,将接收的字节流转换为字符串,通过外部注册好的回调事件将消息发送出去,接收完成后,异步请求下一次回调事件。包含一个套接字对象,一个网络终结点信息,读写buffer,异步事件处理对象,消息回调函数、重连定时器。如果失败,则销毁相关对象。传送连接信息,并记录相应的对应对象信息,设置接收Buffer,处理完成后,启用下一次接受事件。包含两个套接字对象,一个网络终结点信息,读写buffer,信号控制对象,网络读写流。初始化异步回调事件对象,设置接收消息事件的接收Buffer,以及关联回调事件。原创 2023-05-03 09:15:09 · 930 阅读 · 0 评论 -
c#实现倒计时程序
主要利用DispatcherTimer来实现定时更新数据,并在一定条件下切换两张图像实现动态效果。为了及时响应性,需要将定时器的属性设置高级一点。原创 2023-05-02 15:59:24 · 488 阅读 · 0 评论 -
c#实现CSV数据转换Halcon图像
CSV文件中保存有点云Z值数据,将文件数据读取出,将生成实型图像。原创 2023-05-02 15:19:23 · 317 阅读 · 0 评论 -
C#利用Semaphore信号量实现生产消费模式
Semaphore属于System.Threading命名空间中,它主要是用来限制可同时访问某一资源或资源池的线程数。创建两个线程来实现模拟动作。原创 2023-05-02 15:00:59 · 98 阅读 · 0 评论 -
使用程序管理WindowsService
注意 VS2019 C# 使用第三方库:Material Prism1、创建一个WPF项目1.1 选择WPF项目模板1.2 修改项目名称和位置1.3 安装第三方库1.4 在主文件中配置资源项2 设置界面3 添加业务逻辑类3.1 添加业务类注意添加命名空间3.2 添加命令委托(用于界面绑定)3.3 添加实际业务处理逻辑 /// <summary> /// 服务是否存在 /// </summary>原创 2022-05-29 15:24:27 · 111 阅读 · 0 评论 -
C#数组学习
这里写目录标题一级目录二级目录三级目录一级目录二级目录三级目录一、一维数组1.声明type[] arrayName;//类型[] 数值名字。如:int[] intArr;2. 初始化int[] arr = new int[5];int[0] = 1;int[1] = 2;声明时初始化:int[] arr = new int[5]{1,2,3,4,5};string[] strArr;strArr = new string[7]{“Sun”,“Mon”,“Tue”,“Wed”,“Thu”原创 2021-03-05 11:57:11 · 180 阅读 · 2 评论