摘要:
什么是类?将某类东西归纳在一起,可以成为一个类。类有很多种提炼角度,需要根据系统地目标、业务的场景,选取合适的角度对事物进行归纳。什么是类图?类图可能是UML中使用的最多的一种图。和其他图一样,类图的基本语法并不复杂,可能一两天就能掌握,但是真正做到灵活的使用类图,可能需呀多年的功力。类图是锻炼OOA(OO Analysis)和OOD(OO Design)思想的重要工具,有助于OOA、OOD思想的提升。本篇博文,重点讲述类图中类与类之间的关系以及这种关系在代码中的实现形式。写作本文的原因是:网上关于UML类图的语法规则等的资料很多,但是涉及到关系在代码中实现形式的文章却很少。这是很容易理解的: 阅读全文
摘要:
IntroductionHere I am going to discuss Liskov substitution principleof SOLID.BackgroundIf you read my previous two articles it will be better for you to understand SRP,OCP,ISP,DIP of SOLID.Understanding Open Closed Principle and Dependency InversionUnderstanding Single Responsibility and Interface S 阅读全文
摘要:
IntroductionIn the previous onearticle,DebugLZQ discussed OCP(Open Closed Principle)and DIP(Dependency InversionPrinciple) of SOLID.Here I am going to discuss SRP(Single Responsibility Principle)and ISP(Interface Segregation Principle) of SOLID.BackgroundIf you read the previous one article it will 阅读全文
摘要:
IntroductionIn the following three articles I'm going to discuss SOLID.This is the Part One of the series.I'll try to explain Open Colsed Priciple and Dependency Inversion.Now what does SOLID mean? SOLID is the OOD(Object-Orient Design) Principle,where each letter has its own meanS->Singl 阅读全文
摘要:
前面的博文:WPF拖动总结中DebugLZQ遇到的问题是:DebugLZQ给容器中所有UI控件注册一个MouseLeftButton事件,Button控件无法捕获这儿事件的问题,加个断点看下,程序根本不到达这个地方。当时只是简短的提了一下,觉得不够,因此决定再发一篇博文来说一下。foreach (UIElement uiEle in LayoutRoot.Children){ uiEle.MouseMove += new MouseEventHandler(Element_MouseMove); uiEle.MouseLeftButtonDown += new MouseButtonE... 阅读全文
摘要:
这篇博文总结下WPF中的拖动,文章内容主要包括:1.拖动窗口2.拖动控件 Using Visual Studio 2.1thumb控件 2.2Drag、Drop(不连续,没有中间动画) 2.3拖动一个控件 2.4让一个窗口内的所有(指定的)控件可拖动3.Expression Blend X实现拖动(Best Practice)Update: Move and resize controls on a form at runtime (with drag and drop)小结1.拖动窗口 我们知道,鼠标放在窗口的标题栏上按下就可以拖动窗体。我们要实现在窗口的全部地方或特定地方按下鼠标左... 阅读全文
摘要:
今天DebugLZQ在做WPF拖动总结的时候,遇到了这个问题。baidu了下,貌似没有解决这个问题的权威答案,遂写下这篇博文。我想做的事情是:拖动一个窗体内的控件(Rectangle)到另一个容器控件内,而保留原来的控件。为了更好地把问题说清楚,请看如下代码片段:void canvas1_Drop(object sender, DragEventArgs e){ IDataObject data = new DataObject(); data = e.Data; if (data.GetDataPresent(typeof(Rectangle))) { Rectan... 阅读全文
摘要:
前面的一篇博文DebugLZQ使用三层架构实现了TaskVision,并在后面利用Webservice代替ClassLibrary实现SQL Server 2008数据库操作提供程序。关于三层架构的理解请参考前一篇博文。写这篇博文的目的在于,强调我前面一篇博文中提到但是今天又遇到且花了我一定时间去解... 阅读全文
摘要:
前言: 关于不同框架实现同一个TaskVision:前面DebugLZQ先是用WPF(没有使用MVVM,因为前面使用MVVM实现过过点餐系统),因而这个关键点就放在了WPF的Binding上面;然后用普通的Winform,没有加入任何模式,实现了相同的功能。因此这个重点放在了DataGridView... 阅读全文
摘要:
前面的博文:WPF+SQL Server 2008 TaskVision Demo小结,写了用WPF和SQL Server 2008实现这个Demo时候遇到的一些有必要说明的地方。如SQL Server的相关设置问题,DataGrid的Binding等...毕竟那是WPF,其为我们简化了页面的表示,... 阅读全文