随笔分类 - 【06】【编程技巧】
摘要:一、前言 在我们的日常工作中,使用foreach循环对集合进行迭代操作,是最常用的操作之一。有时我们会遇到这样的需求,在遍历迭代元素集合的过程中,根据需求去筛选修改元素,于是就顺手使用foreach进行迭代并修改,当然编译的时候会报错,提示我们在迭代的过程重视不允许对元素进行修改的,此时我们关心的是
阅读全文
摘要:
一、前言 插件,意味着可扩展,且宿主程序不依赖于插件,即插即用。这种软件设计方式可以使我们的应用程序最大化地获得可扩展性、适应性和稳定性,而且便于软件的维护和升级。在什么场景下使用插件呢?例如在本篇文章中,我个人有一个小需求就是希望记事本带行号,于是我自己写了一个极简易的编辑器(CodeEditor
阅读全文

摘要:一、前言 单例模式的应用场景十分清晰,就是一句话,在整个的软件运行周期内,对于某个类只能允许有零个或一个实例。单例模式应用十分广泛,比如我们电脑上的任务管理器就是一个单例模式,无论开多少个任务管理器,你会发现只有一个窗口,这就是典型的单例模式的应用;还有,网站的访问次数统计,如果不采用单例模式会很难
阅读全文
摘要:前言 在单线程中设置窗体某个控件的值很简单的事,只需要设置控件文本的值就可以了,但是有的业务场景很是复杂,界面上的控件也很多,这种情况下当数据量比较多的时候,在单线程中更新UI不可避免地会发生假死或卡顿现象,用户体验十分不爽,所以必须采用多线程来处理数据和UI。但是如果直接添加一个线程来更新控件信息
阅读全文
摘要:前言 一直想用WebBrowser做一些好玩的东西,比如抓取分析感兴趣的网站页面、自动点击提交页面等,所以最近在研究WebBrowser。WebBrowser的功能十分强大,就是一个微型的Browser,不过它也有自己的一些不足,为了下次避免再次出现这个坑,特在此总结一下。 故障描述 本打算用Web
阅读全文
摘要:一、前面的话 对于C#中的接口、抽象类中的抽象方法以及虚方法的比较,网上有很多的例子,讲得也很到位,这篇博文的目的一方面是为了巩固自己的基础知识,另一方面是能够让初学者更加深刻、轻松地去理解和接受这三者之间的区别与联系。 二、接口与抽象类 首先说说接口和抽象类的区别与联系,接口是什么?接口是一组规则
阅读全文