摘要: 导言 首先要了解编译-链接的原理,如下图所示: 编译就是将某种语言写成的源代码,转换成目标文件。目标文件包含着机器代码及代码在运行时使用的数据。编译器就是干这个事情的,比如cl.exe,gcc,g++. 链接就是将多个目标文件以及库文件生成可执行的文件或者静态库或者动态库的过程。常见的连接器有lin 阅读全文
posted @ 2020-12-19 14:14 MonkeyZhong 阅读(655) 评论(0) 推荐(0) 编辑
摘要: 关于AutoResetEvent与ManualResetEvent用法的说明 这两个类都是EventWaitHandle的子类。 主要也是用于线程同步,先看代码: class Program { //static AutoResetEvent doEvent = new AutoResetEvent 阅读全文
posted @ 2020-12-19 14:12 MonkeyZhong 阅读(102) 评论(0) 推荐(0) 编辑
摘要: 首先搞清楚这两个接口,可以看出这两个接口是有一定的关联的,IEnumerable的接口成员是返回一个IEnumerator接口对象, 这个接口对象,有三个成员。 // 摘要: // Exposes an enumerator, which supports a simple iteration over a non-generic // collecti... 阅读全文
posted @ 2018-01-18 14:18 MonkeyZhong 阅读(671) 评论(0) 推荐(0) 编辑
摘要: 前几天一直在查一个bug,在debug下程序在初始化的时候没有问题,release下程序在初始化的时候陷入了死循环,且挂载在vs上release又不会死循环,查了好久,昨天终于查到了为什么,这里暂时不提我自己做的项目,下面我写一个demo来说明这个问题:程序如下: 1 class Program 2... 阅读全文
posted @ 2015-11-17 09:51 MonkeyZhong 阅读(280) 评论(0) 推荐(0) 编辑
摘要: 分为6类:1)布局控件。如Grid, StackPanel, DockPanel.共同的父类是Panel.可以容纳多个控件或嵌套其他布局控件。 这类控件非常重要,内容属性是Children,Panel元素控制他们的布局。包括Canvas, DockPanel, Grid, TabPanel... 阅读全文
posted @ 2015-07-31 10:00 MonkeyZhong 阅读(331) 评论(0) 推荐(0) 编辑
摘要: WPF的命令是经常使用的,在MVVM中,RelayCommand更是用得非常多,但是命令的本质究竟是什么,有了事件为什么还要命令,命令与事件的区别是什么呢?MVVM里面是如何包装命令的呢?命令为什么能够触发呢?带着这些疑问,我们深入讲解下命令:首先看看命令系统的几个基本元素:1) 命令(Comman... 阅读全文
posted @ 2015-06-28 23:22 MonkeyZhong 阅读(1535) 评论(0) 推荐(0) 编辑
摘要: 每每谈到WPF的路由事件,我总是比较模糊的,因为我一般很少用,因为一般是用Binding来满足数据驱动界面的要求,要么就是通过路由命令来执行我想要做的方法,路由事件确实用得少,那么路由事件跟一般的事件的区别在哪里呢?如何使用呢?下面讲揭开其神秘的面纱:首先说一说事件的历史,在windows操作系统上... 阅读全文
posted @ 2015-06-25 13:20 MonkeyZhong 阅读(629) 评论(0) 推荐(1) 编辑
摘要: 在介绍依赖属性之前,我先介绍下属性的历史属性的历史: 早期C++的类中,只有字段及方法,暴露数据靠的是方法, 但是字段直接暴露会不安全,所以才用方法来暴露,在设置的时候加些约束,在MFC中就是这样的。但是为了访问某一个字段,总有设置及获得两个方法,太过分散,不利于管理。所以在C#中又引入了属性的概... 阅读全文
posted @ 2015-06-24 13:24 MonkeyZhong 阅读(1414) 评论(0) 推荐(0) 编辑
摘要: winform有binding, WPF也有binding,区别在哪呢?这里暂时不提。以前也检查接触WPF binding,但为什么过段时间就忘记了呢?可能主要原因自己的知识体系不够完善吧,下面我先总结下binding的用法,然后再深入挖掘binding的原理,最后再总结,这样希望自己能够对bind... 阅读全文
posted @ 2015-06-24 13:17 MonkeyZhong 阅读(368) 评论(0) 推荐(0) 编辑
摘要: C#中的委托和事件的概念接触很久了,但是一直以来总没有特别透彻的感觉,现在我在这里总结一下:首先我们要知道委托的由来,为什么要使用委托了?我们先看一个例子:假设我们有这样一个需求,需要计算在不同方式下的总价,如下面代码所示,这里假设只有两种方式,一种是正常价格,一种是折扣价格: 1 public ... 阅读全文
posted @ 2015-06-24 11:18 MonkeyZhong 阅读(536) 评论(0) 推荐(0) 编辑