C#
hero♞
一个曾献身于ERP系统的小怪物,具体一点,纺织行业ERP。
现阶段正在兢兢业业地工作,勤勤恳恳地学习沉淀。
兼职难产博主。
20220707 golang。
展开
-
C# 多张图片合成一张PDF
我是将每张图片转为byte[],再将所有的字节数组转为byte[][],然后对byte[][]进行的处理,大家有其他格式的图片要进行处理的可以先转为上述数据格式。语种:C#用到的第三方库:PdfSharp.dll(可直接使用PDFsharp包),如下图。原创 2023-06-27 11:36:19 · 2214 阅读 · 0 评论 -
C# Winform中,为图片增加图片水印
【代码】C# Winform中,为图片增加图片水印。原创 2023-06-15 14:56:34 · 628 阅读 · 0 评论 -
C# Winform中,为图片增加文字水印
今天有时间,记录一下winform项目中为图片增加文字水印,顺便水一篇文。老样子,有什么问题,欢迎评论区交流。原创 2023-06-15 14:50:02 · 536 阅读 · 0 评论 -
关于GridControl中增加复选框后,只有在复选框失去焦点后才可以读值的解决方案
当我们点击复选框的时候,单元格处于编辑状态,此时它的值还未更新到gridControl,只有当单元格失去编辑状态(也就是失去焦点)后,单元格的值才会提交到GridControl,进而才会触发此事件。到此时,我们就解决了这个问题,可以顺利地触发 CellValueChanged事件并且在其中拿到自己复选框的值。①首先在GridControl控件上增加一列多选框,以供使用者选择。所以,我想到需要手动提交一下数据,已达到效果,所以就有了下面第三步。今天应现场需求,要在某个界面上增加多选功能,如下如。原创 2023-01-06 14:10:00 · 747 阅读 · 1 评论 -
字符串压缩加密算法(可逆)
①首先是net core版本,此版本NET自带Brotli库,直接用就可以了,案例网上搜一下,这里不进行赘述。②其他Net Framework版本,需要先引入dll包(放在资源里面了,需要自行下载),然后调用。①在net 4以上版本中,因为System.Stream类支持CopyTo()方法,所以直接用下面这种方式就可以。...原创 2022-08-29 15:23:49 · 2444 阅读 · 0 评论 -
关于C#引用类型值作为参数传递时是否可被更改
应用场景:我有一个字典类型的变量,字典的value是list。我要将这个字典中的所有内容传入数据库交互层中的一个方法(InsertFunc)中,然后向数据库插入数据,同时还要每插入字典中的一个item就更新页面上的进度条。所以,我就只能每次只向InsertFunc传入字典的一个item,如果成功插入,就返回1,插入发生异常就返回0,这样的话,在页面层才可以进行进度条的控制。而且,如果要插入的数据主键已经在数据库存在时,要将数据库的数据赋值到这个字典item的value中,由于我们是将字典的每个item传入跨原创 2022-05-11 14:36:21 · 1160 阅读 · 0 评论 -
C#小语法 持续更新
C#日常开发小语法,持续跟新原创 2022-04-25 17:37:55 · 124 阅读 · 0 评论 -
C# 反射 实例化类
今天的内容是通过反射获取类的实体,并且进行赋值,调用方法等。业务场景:不同的部门要录入不同的数据(①页面字段不同②数据库表不同),所以就为这些部门指定了模板(即xml文件),当部门人员要录入时,只需要选择对应的模板,程序通过模板xml中各个结点中配置的信息,来反射实体对象,并加载配置的字段,进行业务逻辑的操作。下面开始:首先,要利用反射来实例化一个对象,要拿到的肯定是①这个类所在的项目(即编译后的dll文件)②这个累的命名空间+类名。就比如下面我配置xml中的这个节点: {"spe原创 2022-04-25 16:48:56 · 1867 阅读 · 0 评论 -
SilverLight基础介绍以及用C#语言创建一个silverlight项目
首先,大家要知道silverlight是一个什么东西,是用来干什么的。我当时有去百度,有些介绍是这样的。Microsoft®Silverlight是Microsoft®公司在.NET Framework平台上实现为Web和移动设备构建和显示下一代多媒体体验和丰富的交互式应用程序(RIA)的一种跨浏览器、跨平台的插件。Silverlight技术是一种新的Web表现层技术,其跨平台的用户体验和可扩展的编程模型分别起到了统一了服务器、Web和桌面和统一托管代码和动态语言、声明性编程和传统编程以及...原创 2021-11-19 13:48:38 · 1275 阅读 · 0 评论 -
设计模式—策略模式
应用场景:现在超市需要一套超市收银系统,我们需要做一套收银系统出来。需求会很简单,我们一想,那不就是几个文本框的事吗,单价和数量输入,然后一算就好啦。但是,如果后期超市推出折扣活动,那我们这几个文本框还扛得住需求吗?这时候肯定有小伙伴儿说,加个下拉列表就行啦,那如果日后又有其他活动呢?岂不是要把代码改来改去喽?这时候,就用到策略模式啦。我用的是winform程序。一:我们拟定现在有三种结算方式:无折扣,八折或者是满三百减一百。分析一下,这三种折扣方式肯定需要三个类(基础策略类)来分别实现。然原创 2021-11-02 17:32:42 · 190 阅读 · 0 评论 -
工厂模式—简单工厂模式
如果我们想要A类的实体,那就是new A();同理,如果想要B类的实体,那就是new B()。但是如果A类和B类有相似之处,就比如都是运算类。那我们想一下,是否可以将这个实例的过程抽象出来呢?也就是将实例化的方法统一(连手机充电器的接口都要全球同意啦,我们当然也要让我们的代码更整洁一些喽)。这个时候,我们就需要用到工厂模式啦。工厂,顾名思义就是我们想要什么它就给我们生产什么嘛。下面上代码,便看边讲解。我用的是控制台项目,实现的是一个加减乘除运算功能。一:我们既然要实现的是加减乘除。那肯定原创 2021-11-01 21:46:06 · 105 阅读 · 0 评论 -
关于C#代码get请求influxdb时,出现时间格式错误的问题
捣鼓了半天终于发现influxdb只能识别一种时间格式:2021-09-07 16:58:172021/09/07 16:58:17或者是2021-9-7 16:58:17都不行。下面是我influxdb的查询语句SELECT * FROM "modbus" WHERE time >= '2021-09-07 16:58:17' AND time < '2021-09-07 17:03:17' group by "name" order by "time" asc下面是我C原创 2021-09-08 09:25:03 · 351 阅读 · 0 评论 -
关于C#多线程的问题
①如何杀掉除UI线程外的所有工作线程。②如何定义一个状态来捕获除UI线程外的所有工作线程的工作状态,如果都已结束则为true,否则为false记录一下问题,改天写demo研究一下。原创 2021-08-19 09:52:54 · 94 阅读 · 0 评论