c#
文章平均质量分 73
爱敲键盘的猫
这个作者很懒,什么都没留下…
展开
-
.NET漫游指南-003-事件
下面所有的都离不开这句话:事件基于委托,所以要先弄清委托再去研究事件。 事件基于委托,为委托提供了一种 发布/订阅机制。原创 2017-08-15 20:32:38 · 244 阅读 · 0 评论 -
.NET漫游指南-013-C#中隐藏方法和virtual方法浅析
virtual:virtual关键词修饰的方法我们一般称之为虚方法,这样我们就可以在任何派生类中重写该函数。 public virtual void virtualMethod() { }同样,virtual关键词也可以修饰属性,我们称这个属性为虚属性或者叫‘重写属性’,语法与‘虚方法’的语法一样,在定义部分加上关键词virtual修饰即可。 ...原创 2018-03-20 19:53:51 · 166 阅读 · 0 评论 -
.NET漫游指南-014-C#中反射浅谈
参考网址:http://www.runoob.com/csharp/csharp-reflection.htmlhttp://blog.csdn.net/xiaouncle/article/details/52983924Reflection反射是指程序可以访问,检测,修改它本身状态或者行为的一种能力。我们可以使用反射动态的创建类型的实例,从现有的对象中获取类型,将类型绑定到现有的对象上。然后调用...原创 2018-03-20 20:36:34 · 140 阅读 · 0 评论 -
.NET漫游指南-015-Lambda浅析
https://docs.microsoft.com/zh-cn/dotnet/csharp/programming-guide/statements-expressions-operators/lambda-expressionshttps://docs.microsoft.com/zh-cn/dotnet/csharp/programming-guide/statements-expressi...原创 2018-03-21 20:27:21 · 159 阅读 · 0 评论 -
.NET漫游指南-016-(WPF style ,trigger , template and storyboards) ControlTemplate浅析
源码地址https://download.csdn.net/download/geshicuowu/10337182在WPF中style ,trigger,template, storyboards使得我们可以创建更为个性化的UI,这里先从ControlTemplate讲起,如何利用ContorlTemplate来快速改变一个控件的外观。此处以radioButton为例,在WPF的原生控件中rad...原创 2018-04-10 08:59:09 · 260 阅读 · 0 评论 -
.NET漫游指南-017-(WPF style ,trigger , template and storyboards) ControlTemplate浅析 之ContentTemplate
上一节我们将了如何自定义一个用户控件的样式,其中涉及到了ContentTemplate的概念。这里我将简要叙述这个的实现。https://msdn.microsoft.com/zh-cn/library/system.windows.controls.contentpresenter.aspx#%E7%A4%BA%E4%BE%8Bhttps://docs.microsoft.com/zh-cn/d...原创 2018-04-12 19:06:01 · 1188 阅读 · 0 评论 -
.NET漫游指南-018-(WPF style ,trigger , template and storyboards) 之 DataTemplate浅析
Microsoft data template overview在016和017里讲述了如果修改一个控件的外观,其中主要是ControlTemplate的讲解。但是仅仅改变控件的外观仍然很难适应一些业务的要求,比如当我们向一个ListBox中绑定我们需要展示的数据时,假设数据对象有name,age,email等多个属性时,我们直接绑定可能就无法正常显示出来数据很可能显示出如下图所示:即直接显示出对...原创 2018-04-12 20:47:46 · 195 阅读 · 0 评论 -
.NET漫游指南-020-WPF中的Dispatcher中的Invoke和BeginInvoke
https://msdn.microsoft.com/zh-cn/library/system.windows.threading.dispatcher.invoke.aspxDispatcher.Invoke在Dispatcher所关联的线程上同步运行特定的委托。说明:在WPF中只有创建了DispatcherObject的线程才可能操作所需的对象。例如,一个从主UI线程中派生出的背景线程,是不能...原创 2018-05-14 20:34:20 · 596 阅读 · 0 评论 -
.NET漫游指南-019-MVVM
之前的blog中讲了很多比较细化的知识点,但是在开发过程中如何保持一个比较好的开发模式是前期开发中比较困惑的地方。这里就讲解下MVVM开发模式,也是目前WPF开发中普遍采用的开发模式。MVVM 模式就是 View ViewModel Model :将前后端开发分离,保持了较好的低耦合,便于后期的维护,也比较好的表现了数据驱动的运行模式。我在自己的开发过程中总结了MVVM模式开发要遵循的几个...原创 2018-05-14 21:24:49 · 244 阅读 · 0 评论 -
.NET漫游指南-012-优雅的捕获并处理异常
在.NET的开发中,尤其是前端的开发中,经常会遇到服务中的数据异常,返回字段异常,异步处理中引用对象为空数据类型无法进行转换等,所有的异常都要进行捕获处理,如果直接反馈给客户端是非常的不友好的一种提样,下面总结一下异常的捕获和处理。1:throw , try - catch , try - catch -finally以上三种是是我们经常使用的异常捕获和处理方式。其中:throw的语句结构最为简单...原创 2018-02-14 16:44:02 · 243 阅读 · 0 评论 -
.NET漫游指南-011-.NET Framework中处理和引发事件
参考网址:https://msdn.microsoft.com/zh-cn/library/edzehd2t(v=vs.110).aspx在之前的几篇博文中主要是从实用角度来讲委托和事件委托以及事件的触发和调用,010,011等后续几篇blog主要从理论方向来进行解释。在.NET Framework中事件是基于委托模式的。委托模式遵循观察者设计规范,观察者模式使得订阅者嗯那个够进行注册原创 2017-12-15 21:15:42 · 321 阅读 · 0 评论 -
.NET漫游指南-004-在dataGrid中添加CheckBox支持单选,多选,全选功能
发现在DataGrid中添加dataGridCheckBoxColumn时,checkBox控件并不能很好的工作,由此我们需要稍作改造使其能够支持单选,多选,和全选功能。这其中涉及的内容有Trigger,style(如果对UI有统一要求的话),template,I NotifyPropertyChanged。实现的大概思路为: 1:在Resource中自定义一个数据模板DataTemplat原创 2017-08-23 20:36:19 · 737 阅读 · 0 评论 -
.NET漫游指南-005-INotifyProperChanged和List<>,ObservableCollection<>使用
在WPF中的banding机制可以实现客户端和数据端的数据交互,其中的常用的有INotifyProperChanged接口和List<>,ObservableCollection<>集合。当数据对象实现INotifyProperChanged接口时,当其数据对象的属性发生变化时,就会触发ProperChange事件,从而通知客户端属性的变化,来达到数据的中属性的更新。但是一帮都是banding的数据原创 2017-08-23 21:42:11 · 402 阅读 · 0 评论 -
.NET漫游指南-007-WPF中多线程调用界面控件
常见的错误提示为:调用线程无法访问该对象,因为另一个线程拥有改对象 出现该异常的原因是因为多个线程在同时访问一个对象造成的,c#2005以后不再支持多线程直接访问界面控件。所以,这种情况就需要使用委托来解决。源码地址:http://download.csdn.net/download/geshicuowu/9994884设想一个场景:实现一个数字时钟,时钟的颜色随时间不断变化。 实现的基本思路:原创 2017-09-21 20:22:08 · 386 阅读 · 0 评论 -
.NET漫游指南-002-委托
什么是委托?为什么要用委托?委托有那几种形式?怎么使用委托?委托的定义:委托是一种特殊类型的对象(也就是说,可以看作是一个特殊的类),包含一个或者多个方法的地址。为什么要用委托:当需要把一个方法进行传递时就需要用到委托来实现,在C/C++的时候是提取函数地址的指针进行传递的,但是这样是没有安全性的,因为你无法对其进行安全性校验,这就造成了编码的不可控性,非法的数据就可能被调用。在.原创 2017-08-14 20:14:01 · 333 阅读 · 0 评论 -
.NET漫游指南-008-泛型,装箱,泛型委托
这篇主要讨论,泛型的相关概念,什么是泛型,泛型的形式,为什么要用泛型,泛型与类型的装箱有什么优劣,泛型委托的应用,泛型委托的简化编写等内容的较为仔细的浅谈。CLR 2.0引入了泛型,泛型将类型参数的概念引入.NET,在这之前C#是通过将类型于基类型Object相互强制转化来完成泛化,这就付出了一定的代价,任何类型向上转化成Object时,如果类型为值类型,将他们添加到列表中时必须将其装箱,检索原创 2017-09-25 20:34:09 · 368 阅读 · 0 评论 -
.NET漫游指南-006-语言集成查询LINQ
LINQ是一系列直接将查询功能集成到C#中的技术的统称。借助LINQ查询成为了最高级的语言构造,就像类,方法和事件一样。更多详细内容可以参考Microsoft开发者文档 https://docs.microsoft.com/zh-cn/dotnet/csharp/programming-guide/concepts/linq/index 中的介绍。LINQ只是对数据源的过滤,并不会改变数据源的原创 2017-09-07 21:58:26 · 207 阅读 · 0 评论 -
.NET漫游指南-009-泛型事件委托
这篇文章主要讲述泛型事件委托。 参考网址:https://msdn.microsoft.com/en-us/library/system.eventhandler(v=vs.110).aspx# 源码地址:http://download.csdn.net/download/geshicuowu/10003963 在之前的内容中分别讲述了委托,事件,泛型。但是在项目开发中一般都是结合使用的。下面原创 2017-09-30 16:26:59 · 492 阅读 · 0 评论 -
Microsoft Excel函数总结
有一次任务中涉及到了报表的生成,其中对数据的处理有一部分要放在excel中来做。但是我对excel函数的编写又没有很好的经验,只是平常写过SUM(A1+C1)之类的简单处理。网上对函数的解释又不是很准确,故在此记下Microsoft excel的官方函数文档,以供后面查阅学习。 https://support.office.com/zh-cn/excel 其中常用的函数:有MATCH , I原创 2017-10-18 20:39:32 · 359 阅读 · 0 评论 -
.NET漫游指南-010-WPF中的KeyDown和PreviewKeyDown事件的区别和用法
参考网址:https://msdn.microsoft.com/zh-cn/library/system.windows.forms.control.keydown(v=vs.110).aspx关于Control.KeyDown事件官方的备注中是这样说明的(建议直接看英文,中文文档翻译不准确,如果只是想要处理窗口级别的键盘事件同时也不想其它控件接收到键盘事件,在你的窗体中控件的KeyPre原创 2017-12-15 20:15:14 · 7814 阅读 · 0 评论 -
.NET漫游指南-021-Tuple
https://msdn.microsoft.com/zh-cn/library/system.tuple.aspxA tuple is a data structure that has a specific number and sequence of elements.元组是一个拥有特定数量和序列元素的数据结构。在.NET Frameworke中直接支持1到7个元素的形式,此外我们可以创建8...翻译 2018-05-15 21:44:08 · 168 阅读 · 0 评论