- 博客(96)
- 收藏
- 关注
原创 .Net中的 Web Api 和 Web Service简介
WebApi是一种永凯开发系统间接口、设备接口的API技术,基于Http协议,请求和返回结果默认是json格式(也可以规定用xml格式)。比WCF更简单更加通用,比WebService更加节省流量、更加简洁,因为WebService用的是xml格式。在Client中访问http网址,把请求通过一定的格式的打包,发送给服务器上,服务器也把对应回复打包成一定的格式返回给你;)的设计思想,后者国外商业应用更多。按一定的格式,调用远程服务器的方法,服务器给你返回你请求的数据;),另外一种就是基于。
2025-09-11 09:24:05
78
原创 C# 修改基类List中某一元素的子类类型
直接使用list.ElementAt(0)取出第一个元素a,然后new 了一个新的B对象,因为我以为a的引用和链表list的第一个位置list[0]的引用相同,实际上并不是这样的。如果不new新对象,改变a里面的属性,会直接反馈到list[0]里面,但是new 了新对象的话,a和list[0]就不是同一个东西了;然后我想改变第一个元素类型由原来的A到B;第一个元素为A类型,第二个元素为B类型,基类:BaseClass。
2025-09-04 18:55:18
274
原创 WPF 程序用户权限模块利用MarkupExtension实现控制控件显示
不直接设置控件的Visibility属性,利用一个标记扩展,传入一个权限值,然后拿这个权限值跟当前程序的用户权限对比,如果控件的权限值高于当前用户权限(比如控件的权限值是管理员,但是当前用户是普通用户),则返回Visibility.Collapsed,反之返回Visibility.Visible。通过控件直接设置属性值实现改变控件可见状态;
2025-08-27 14:41:08
403
原创 WPF TabControl页面绑定ItemsSource
TabControl的ItemsSource属性使用比较少。这里我使用ini配置文件,使用tabcontrol呈现。每个Tabitem显示ini中一个节的信息,键值对使用表格显示。
2025-08-26 10:26:00
220
原创 Halcon 显示矩形的对角线
上面的四个数是两个顶点的坐标,下面是两个顶点连线长度,这样找出最长的线段的索引就能找到对应的坐标索引,就可以找到对应的两个点。【【线段一的坐标点】【线段二的坐标点】...【线段六的坐标点】】的形式,后来发现没有二维数组的概念,就换了上面代码中的思路。矩形的四个顶点,连线可以生成六条线段,标准矩形情况下取最长的两条线段就是对角线。本来想的是使用halcon的二维数组,存储成。
2025-08-19 15:43:08
194
原创 C# Newtonsoft.Json 反序列化子类数据丢失问题
其中type字段就是类型描述,多个子类信息分开保存,反序列化的时候即使使用基类类型承接也不会丢失信息。但是保存的数据是子类数据,然后序列化或者反序列化的时候要求对象类型不丢失。
2025-08-17 18:16:24
165
原创 Halcon 拟合十字Mark
其中Find_Line_2DMeasure_Simplify_Custom。思路:模板定位大概位置,然后拟合四条边(上下左右)。
2025-08-12 16:25:46
209
原创 WPF 表格中单元格使用下拉框显示枚举属性的一种方式
然后使用表格控件显示实体类列表,这里的控件可能是第三方控件,我这里演示的也是第三方控件实现的。其中类型一列即为枚举列。
2025-08-08 14:07:45
222
原创 Winform C# 热力图制作要点
研究了一下常用的套路:先创建一张灰度图像,一条渐变色带,然后根据灰度图像每个点的黑度(像素值)去渐变色带里面找对应的颜色,然后按像素给灰度图像上色。常用的一个类:ColorMap。
2025-07-31 16:28:05
856
原创 Winform PathGradientBrush类使用
定义一个新属性:public List<System.Drawing.Point> PointsList = new List<Point>();在winform中生成九圆阵列,每一个圆就是一个由PathGradientBrush填充的图案。需要一个panel控件承载Bitmap,实际上是在Bitmap上画图案。用渐变的效果填充图形,渐变的方向是从由路径定义的图形边界指向图形的中心。用来填充图形(如形状或文本)内部区域的对象。用于创建路径(或形状)渐变填充的画刷;命名空间的一部分,通常用于。
2025-07-31 15:03:22
407
原创 Winform 渐变色 调色板
就是通过image创建了个画布,就是允许你改变image。你就想象成Graphics就像图片外面一层透明的膜,在膜上画图就相当于在image上画图了。原本想研究一下C#生成热力图,奈何知识点较多(相对于本人来讲),一下子看的有点懵,本着循序渐进的思想,在此记录一个相关功能。问:Graphics.FromImage(img);这样定义后画布与图片的关系到底是怎样的?colorPanel是我的控件名,colorBitmap是位图对象的引用;
2025-07-30 20:41:28
235
原创 WPF 使用离散型关键帧动画实现一闪一闪的动画效果
DiscreteDoubleKeyFrame KeyTime="0:0:0.5" Value="0.5" /> //动画时间到0.5s时 Opacity=0.5。<DiscreteDoubleKeyFrame KeyTime="0:0:0" Value="0" /> //动画开始时 Opacity=0。即:开始时 Opacity=0,过了0.5s后Opacity变为0.5,然后持续到1s,然后重新执行动画;不结束的话会一直执行。Duration="0:0:1" //一个循环持续时间。
2025-07-25 13:55:24
515
原创 WPF 控制动画开关
可我这里使用了转换器,可以理解为就是把执行动画的开关绑定到了我后端ViewModel的属性上。比如myBorder 和 ShadowEffect;其中实现了依赖属性IsAnimating。
2025-07-24 13:26:24
432
原创 未能找到类型或命名空间名“XXX”(是否缺少 using 指令或程序集引用?)
首先确定这个类是不是存在的,如果存在就是项目缺少相关程序集(dll),这个类在缺少的那个dll里面定义。未能找到类型或命名空间名“Bitmap”(是否缺少 using 指令或程序集引用?网 ’ 是 ‘.NET’ 被网页自动翻译了.....引用后回到代码,就会有提示添加using引用了。进到.NET界面后拉到最下面。
2025-07-23 15:04:42
251
原创 halcon 模板匹配+二维测量 查找圆
其中scale_image_range和dev_display_shape_matching_results是外部函数。创建xld圆形模板→利用模板寻找四个圆形的大概位置→在找到的位置进行2D测量→根据2D测量出的圆位置信息生成中心坐标。可以先使用模板匹配粗定位,然后进行二位测量。对比度过低,使用阈值分割不出小球影像。
2025-07-20 13:17:21
367
原创 GIT : early EOF invalid index-pack output
git远程仓库600M左右,克隆时候报错;当传输不完整时会出现"early EOF"(意外结束)和"invalid index-pack"(索引无效)错误。原来连的是我的热点,直接换根网线就好了,看来确实是网络的问题,远程仓库很大的情况下,网络不稳定容易出现丢包,EOF函数是计算机编程中用于检测文件结尾的核心函数,其名称源于"End Of File"的缩写。是Git用来处理接收到的包文件的。
2025-07-16 10:36:15
203
转载 WPF Matrix ScaleAtPrepend和ScaleAt
PnSP前=(Pn−P前)⋅s+P前=Pn⋅s+P前(1−s)PnSP前=(Pn−P前)⋅s+P前=Pn⋅s+P前(1−s)PnMSP后=(Pns+P前(1−s))M=PnSP前MPnMSP后=(Pns+P前(1−s))M=PnSP前M。PnMSP后=(PnM)⋅s+P后(1−s)PnMSP后=(PnM)⋅s+P后(1−s)PnSP前M=(Pns+P前(1−s))MPnSP前M=(Pns+P前(1−s))M。
2025-07-09 16:50:56
44
原创 Visual Stadio CodeMaid插件使用
专业的说法:重新组织 C# 文件中成员的布局,以遵循 Microsoft 的 StyleCop 约定或您自己的首选项。然后右键或者拖拽进行操作,右键可以查看引用,删除。拖拽可以排列在类里面的顺序。删除所用的#region 和#endregion注释,个人感觉一样鸡肋。因为版本不一样,CodeMaid弹窗界面可能不同,但是功能都差不多。就是查找,不用手动输入文件名查找了,会自动查找在哪个目录并展开。按照某种顺序整理当前文件代码,字段属性方法顺序什么的。就是按照字母顺序排序,这里不适用,都搞乱了。
2025-06-19 14:21:09
281
原创 WPF 的RenderTransform使图标旋转180°
其中的RenderTransform就是 WPF中在渲染阶段应用的简单变换。还有其他很多复杂的变换,可以自行搜索了解。
2025-06-19 09:28:35
161
原创 C# 关于闭包与多线程结合使用
以上代码的可能输出为:Thread0:2Thread4:5Thread2:3Thread1:3Thread5:5Thread6:6Thread7:7Thread8:9Thread3:3Thread9:10这段代码的输出从两个方面印证了线程不是立即启动的。首先,我们看到线程并没有按照顺序启动。在代码逻辑中,前面Start的那个线程也许迟于后Start的那个线程执行。其次,传入线程内部的ID值,不再是for循环执行中当前的ID值。
2025-05-30 09:37:03
430
原创 ObservableCollection序列化,和监听链表内元素变化
ObservableCollection序列化小记,和监听链表内元素变化实现
2025-05-22 20:07:45
559
原创 C# SourceList<T> 学习
https://www.reactiveui.net/docs/handbook/collections.html?q=SourceList
2025-04-29 15:20:26
135
QT+VS 编程遇到无法打开源文件x86intrin.h
2023-07-20
TA创建的收藏夹 TA关注的收藏夹
TA关注的人