C#
小木屋大梦想
这个作者很懒,什么都没留下…
展开
-
C# C++ 互操作:C++向C#输出不定长数组或指针的实现
C++与C#互操作:实现C++向C#传递不定长数组或指针原创 2023-02-21 11:05:08 · 502 阅读 · 1 评论 -
浅谈CRC校验:C#实现CRC8、CRC16、CRC32
CRC8、CRC16、CRC32不同选项对应的不同的CRC校验结果;原创 2022-04-13 17:30:19 · 7223 阅读 · 1 评论 -
微软字节处理
微软 BitConvert.GetBytes 函数获取的字节排列为小头排列,低位在前,高位在后;有工程师喜欢大头排列(高位在前,低位在后),转化的时候注意用 Reverse 函数反转一下字节顺序原创 2021-11-08 09:42:22 · 378 阅读 · 0 评论 -
OpenCvSharp4 无法加载 OpenCvSharpExtern 的解决方案
OpenCvSharp4 Git 信息如下:OpenCvSharp4 爆出以下问题,如截图信息:visual Studio 2019 ,项目配置 Any CPU :解决方法如下:1、下载 OpenCvSharp4 某一个版本源代码(我下载的是OpenCvSharp-4.1.1-20191217 版本),解压后按目录找到以下文件将此目录的文件OpenCvSharpExtern.dll 复制到 项目 Debug目录下(any cpu 按说应该复...原创 2020-08-12 15:43:20 · 4665 阅读 · 0 评论 -
标记一个画图函数,比画线好用
public partial class Form1 : Form { public Form1() { InitializeComponent(); //this.label3.Paint+= label1_Paint; //this.label4.Paint += label1_P...原创 2020-05-03 15:34:29 · 172 阅读 · 0 评论 -
Visual Studio制作安装程序教程
转载自https://www.cnblogs.com/susuzhao/articles/3419726.htmlwinform安装项目、安装包的制作、部署①1,解决方案—添加—新建项目—其他项目类型—安装和部署—安装项目,输入名称Setup,点“确定”2,添加主输出:单击左侧“应用程序文件夹”,右侧右键—添加—项目输出-主输出-确定。3,添加开始程序中的文件夹:右...转载 2020-01-14 16:43:25 · 1022 阅读 · 0 评论 -
Dictionary、List<KeyValuePair<i>>的组合使用
菜菜遇到一个有意思的问题:Dictionary字典没有排序功能,遇到需要特殊排序的还要倒腾成List>,再在sort()函数中写委托排序;而List>只能支持读取操作,即只能get读取操作,无法set改变值;所以遇到既需要遍历改变某些值,然后再按照所需排序这样的操作,往往需要Dictionary和List>一起操作完成,如下所示: private List> getdic(List>原创 2014-06-25 14:44:51 · 1124 阅读 · 0 评论 -
获取应用程序路径
fileName = System.AppDomain.CurrentDomain.BaseDirectory + @"\config\proConn.xml";fileName = System.IO.Path.GetDirectoryName(Assembly.GetExecutingAssembly().GetModules()[0].FullyQualifiedName) + @"\c原创 2013-10-08 14:39:32 · 467 阅读 · 0 评论 -
一个小小的函数(连续删除List中符合条件的一个或多个值)
private List> deleList(List> list, string parentText) { foreach (KeyValuePair var in list) { if (var.Key == parentText) {原创 2014-06-25 14:55:10 · 521 阅读 · 0 评论 -
程序员外行的中医脏腑观点
基本上看这图就是:左右两个部分:即两个循环,首先是心火的下降和肾水的上升,相交于脾则肝木升,终于心火;还有一个是心火的下降和肾水的上升,相交于脾则肺将,终于肾水。这样看就不乱了,也没有一个无休无止的死循环了。通俗的讲就是两个原料提供者心火和肾水,一个下降一个上升。在此产生两个过程,一个是肝的生发,肝的生发可以理解为是一个生产过程;还有一个就是肺的肃降,肃降的过程可以通俗的理解为没有完成的东西或原创 2014-07-04 14:49:42 · 657 阅读 · 0 评论 -
C#中Timer使用及解决重入问题
解决方案三个,成功解决timer组件和progressbar更新偶尔死机的问题1、使用lock(Object)的方法来防止重入,表示一个Timer处理正在执行,下一个Timer发生的时候发现上一个没有执行完就等待执行,适用重入很少出现的场景(具体也没研究过,可能比较占内存吧)。 代码跟上面差不多,在触发的方法中加入lock,这样当线程2进入触发的方法中,发现已经被锁,会等待转载 2015-07-07 15:07:34 · 1860 阅读 · 0 评论 -
窗体委托、事件两种方式传值、lamda表达式
偶尔想起来了窗体传值的应用,保存下来理解委托和事件,省的以后自己又忘了,原创 2016-04-06 17:45:36 · 441 阅读 · 0 评论 -
winform中Dock、Anchor属性的设置(简单实用)
这个在做winform程序的空间编程的时候遇到过太多次了,自己也想留下点经验,搜索了一下,这篇文章很好很强大了,感谢博主“驴子的菜园”。 程序界面如上 各部分简要说明: 整个窗体上覆盖一个splitcontainer。 splitcontainer的panel1上放置一个label与一个treeview. splitcontainer的panel2上放置一个tabcontrol. t转载 2013-10-30 16:24:57 · 3937 阅读 · 0 评论