随笔分类 -  C#

C#相关内容
摘要:用 AI 来看看 C# 使用 XMLDOCUMENT 如何释放。 它告诉我,XMLDocument 继承了 IDisposable 接口,所以可以直接显示调用 Dispose()。 然后我试了一下,没有这个接口,再看了一下继承关系,根本就没有吧! 然后我再告诉 AI,你乱说,它马上就承认了,哈哈。 阅读全文
posted @ 2025-03-10 14:53 PencilStart 阅读(11) 评论(0) 推荐(0)
摘要:in/ref 不用的话,传入的是对象的引用值。如:Call( Class c )。在方法中若将此参数变量赋值为null,并不会影响到传入前外部的实例引用。也就是说,在方法中这个变量是一个局部引用变量。 类似于 C/C++ 中,传入一个对象或 结构 的指针地址。在方法里把这个地址改成0后,方法外保存实 阅读全文
posted @ 2025-01-28 14:56 PencilStart 阅读(34) 评论(0) 推荐(0)
摘要:C# 中自带的那个 System.Windows.Form.Timer 看上去是通过消息事件方式的,精度上好像小于10ms 就不行了。因为我想每秒把界面刷新60次,结果,Timer.Interval=16后(为啥16?因为1000/60=16.66667),测了一下,真实的刷新只能跑到每秒40次左右 阅读全文
posted @ 2024-12-22 21:31 PencilStart 阅读(71) 评论(0) 推荐(0)
摘要:这段时间搞东西发现 C# Windows库里 没有了以前 C++ 中 修改坐标系 的一些 API,比如 SetViewportExtEx, SetWindowExtEx 这些东西。 众所周知,在 Windows 系统中,坐标系的原点是从左上角开始为(0,0)的,Y轴越下值越大。这与现实生活中场景,低 阅读全文
posted @ 2024-12-18 09:46 PencilStart 阅读(333) 评论(0) 推荐(1)
摘要:这段时间搞东西,接触到这个,整了好几天。终于 Stackoverflow 上找到一个与我思路上一样的答案。之前用了好多遍 百度 AI 的方法都牛头不对马嘴。 看来 自己对 这一套 C# 的中的反射机制中的内容还不是太熟悉。所以摸了好久。 主要思路是这样的: PropertyGrid 可以把一个对象中 阅读全文
posted @ 2024-12-03 11:38 PencilStart 阅读(163) 评论(0) 推荐(2)
摘要:只是把 Semaphore 换成了 EventWaitHandle。请与这个贴子中的例子进行比较:https://www.cnblogs.com/pencilstart/p/15865478.html 注意,由于 .NET 3.5下并没有官方实现的 Task 库,所以,是通过 VS 中 NuGet 阅读全文
posted @ 2022-02-07 23:21 PencilStart 阅读(296) 评论(0) 推荐(0)
摘要:使用 Thread 的请参考另一个贴子:https://www.cnblogs.com/pencilstart/p/15865400.html 注意,由于 .NET 3.5下并没有官方实现的 Task 库,所以,是通过 VS 中 NuGet 取得的 非官方 实现的 Task 库,调用接口与官方.NE 阅读全文
posted @ 2022-02-06 12:04 PencilStart 阅读(1080) 评论(0) 推荐(0)
摘要:这个例子试图用 C# 3.5 下支持的 Thread 与 Semaphore 来说明,如何让多线程异步(async)处理事情。 比较适合于 A,B 两人抢麦发言的场合。 1 using System; 2 using System.Threading; 3 4 namespace testSemap 阅读全文
posted @ 2022-02-06 11:14 PencilStart 阅读(619) 评论(0) 推荐(0)
摘要:原文在这里:https://www.roelvanlisdonk.nl/2012/02/28/fastest-way-to-read-dimensions-from-a-picture-image-file-in-c/ 对比了 Image.FromFile(file) 的方法,用流的方法,快了250 阅读全文
posted @ 2020-11-28 15:34 PencilStart 阅读(2440) 评论(0) 推荐(0)
摘要:所谓动态载入,就是运行时,使用到 kernel32.dll 中的 LoadLibrary() 去载入 32 位的 DLL。 问题来了,在64位 WIN 环境下,Windows\System32\Kernel32.dll 是 64位 的!!!!真正的 32位 kernel32.dll 在 Window 阅读全文
posted @ 2020-11-27 01:07 PencilStart 阅读(3743) 评论(0) 推荐(0)
摘要:是这样的,今天这个忙了快一个小时。后来发现不是我的问题,居然是 M$ 的 BUG。.NET 这些奇异半成品地方太多了。 就是在 ListView 中,在 View = Large 下的大图显示方式下,如果有 4 个 items,A,B,C,D。 如果你删了第一个 item A,然后,又把这个 ite 阅读全文
posted @ 2020-10-23 22:25 PencilStart 阅读(159) 评论(0) 推荐(0)
摘要:C# 把 DragDrop 实现的很全面。 一个 ListView,当其 AllowDrop = true 后,就会支持 DragDrop 了。 可以把外部的 东西 拖进 ListView ,也可以支持 ListView 中,Item 之间的互拖(比如用来改变Item之间的顺序)。 若要支持一批的 阅读全文
posted @ 2020-09-22 22:54 PencilStart 阅读(730) 评论(0) 推荐(0)
摘要:原文作者不让转载,就发个链子这里吧,大家自己过去看。 https://codedefault.com/s/how-do-i-call-directory-getfiles-with-multiple-filters-in-csharp-application/ 用作备份。这里简单说一下思路,就是 D 阅读全文
posted @ 2020-09-06 16:38 PencilStart 阅读(1756) 评论(0) 推荐(2)
摘要:原来看官方说明,要把虚拟模式打开,VirtualMode = true,然后自己搞内存缓存,才会快。 然而我试过了,并不会。因为我的数据是在sqlite中的,搞了cache 一样到了边界时,还是要触发取一批数据。 并且刷新时,还是明显可见的画格子那种慢速操作。 后来,某一天在网上找到,居然把 Dat 阅读全文
posted @ 2020-08-15 14:08 PencilStart 阅读(517) 评论(0) 推荐(0)