摘要: 关于UI模块的解耦,说简单点,首先需要配置菜单与对应操作类的映射关系(或存放于配置文件,或继承接口直接写死在模块代码中,或存放到数据库,原理都一样),然后在菜单加载时,读取配置项动态生成菜单或是其他控件列表,同时为对应菜单项添加点击之类的事件,最后在事件中利用反射生成模块的实例(与界面相关的还需... 阅读全文
posted @ 2014-11-11 21:45 峰顶飞龙 阅读(1115) 评论(0) 推荐(0) 编辑
摘要: 前阵子在公司弄个内部的进销存管理系统,从了解需求、系统设计到编码,大约耗费了两个月时间,后来公司有了其他的安排,这东西就算黄了。顺便吐槽一下,厂里的一些人说话真心不顾别人感受,邮件啥的没一句舒服的。不过以前在别的地方干活都是很多人弄,一直都是按领导的意思办即可,基本上不怎么跟人打交道,不能保持淡... 阅读全文
posted @ 2014-11-11 00:22 峰顶飞龙 阅读(2719) 评论(3) 推荐(1) 编辑
摘要: 最近离职,离职前面的一份外派然后又外包的工作,总觉得不妥,之后外派的办个入职手续都一再失约,干脆推了。恰逢清明时节,暴雨纷纷,于是打算先休息休息调整下状态,工作的事情还是谨慎点的好,免得影响心情。话说这种天气窝在家里休养生息顺便修炼修炼,幸福感强了不少,性价比还是蛮高的,呵呵。 由于闲置在家,就一边玩玩游戏,一边看看书了。另外花了些零散时间做了套UI,以便哪天工作需要可以copy,免得时间长了,不用就又忘了,到时耽搁时间。话不多说,下面是效果图,基本上WPF中常用的一些控件都弄了下。 下面是项目的结构,新手用作学习参考还可以看看。 项目中附带一个简单的注入,通过在Module... 阅读全文
posted @ 2014-04-09 19:22 峰顶飞龙 阅读(4595) 评论(11) 推荐(4) 编辑
摘要: ERP系统业务繁杂,为应对变化,通常会用到公式编辑器。联想到大学学过的汇编原理,国庆期间一个人没事干,就略微温习了下,花了几个小时写了个公式编辑器。面向对象搞多了,算法能力和记忆力都慢慢弱化了,呜呼哀哉! 本公式编辑器实现的功能很简单,就是计算加减乘除。未进行公式的校验,也未涉及逻辑运算,目的只是单纯地温习下大学的理论基础,同时希望能给其他人一些启发。采用逆波兰式算法,运行结果如下所示。下载源代码 实现代码如下: public class CalculateHelper { //定义算术运算符的优先级 private int GetOperato... 阅读全文
posted @ 2013-10-05 17:04 峰顶飞龙 阅读(994) 评论(0) 推荐(0) 编辑
摘要: 前几天,各种坑爹的情况,导致不得不自己去动手实现带层级关系的Grid。之后翻了翻书,貌似说msdn和codeproject上有这么个例子,叫做TreeListView。这里就简单说下自己的思路,也许有人能用的上。说起来就是个Grid,然后在第一列前面加个ToggleButton,点击时操作数据集合增删记录来驱动界面,效果如下。点击这里下载源代码 阅读全文
posted @ 2013-08-01 21:16 峰顶飞龙 阅读(4666) 评论(2) 推荐(2) 编辑
摘要: 关于3D方面的东西,本人只是浅尝辄止,从未曾在项目中使用过,相信有不少人也是基于一份兴趣去学习。这里将展示几个基本的WPF 3D编程,希望对初学者有一定帮助。 为帮助理解,这里全部使用C#代码构造,而不是写在XAML中,有兴趣的可以在这里下载源代码。下面来先看下几个效果图。 下面就第一幅效果图做个基本的讲解。 3D有三个重要元素,模型、灯光、视野。那我们现实来对比,我们要看到一个物体,首先这个物体要存在(即要构造一个模型),其次需要有灯光照在这个物体上(即要构造一个灯光,还要将灯光照在这个模型上,不然就看不见模型),然后我们要有视野,要用眼睛去看(就是说我们还要构造一个视野,而且模型要在... 阅读全文
posted @ 2012-11-29 16:47 峰顶飞龙 阅读(4137) 评论(2) 推荐(3) 编辑
摘要: MVVM,一言以蔽之,即使用ViewModel调用DAL层(或是其他层)来对Model进行增删查改操作,然后通过绑定和命令将数据展示到View中。 调用DAL层操作数据,没什么可说的。关于绑定,本人的上一篇文章 wpf之数据绑定基础中已有涉及。本文将通过一个简单而完整的例子来讲述数据的展示及用户操作的绑定,且看本人慢慢道来。Model还是依旧使用上一篇文章中的,下面是两个Model的代码。 public class ModelBase : INotifyPropertyChanged { public event PropertyChangedEventHandle... 阅读全文
posted @ 2012-11-28 23:07 峰顶飞龙 阅读(1937) 评论(4) 推荐(0) 编辑
摘要: 关于WPF的数据绑定,本人愚见,将其分为两大类。一类为绑定到界面元素的属性,多用于一些界面设计中,以本人目前的眼界来看,此类需求相对较少;另一类则为用户数据的绑定,多用于数据展示。下面就几个简单的小例子,阐述下这两种绑定的一些基本做法。一、绑定到界面元素 绑定到界面元素,相对比较容易,这里用一个简单的例子简要说明下基本的语法。<Window x:Class="BindPracitce.MainWindow" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns 阅读全文
posted @ 2012-11-28 16:31 峰顶飞龙 阅读(1478) 评论(5) 推荐(1) 编辑
摘要: 以前学WPF时弄的个自定义窗体,关于截断系统消息的一部分代码来源于网上。 源文件在这里。 说起来也容易,整个窗体就是个border,渲染下,然后在上面加层DockPanel,放那些标题和按钮。 下面是自定义窗体的样式,将XAML分开,这样方便看。 窗体部分:View Code <Style x:Key="WindowStyle" TargetType="Window"> <Setter Property="AllowsTransparency" Value="True"/> <Sett 阅读全文
posted @ 2012-11-26 21:57 峰顶飞龙 阅读(1709) 评论(3) 推荐(0) 编辑
摘要: 此文目的旨在让人快速了解,没有什么深度,如需深入了解布局,请参考msdn。 如果你要把WPF当winform使用,拖拖控件也无不可,不过建议还是不要拖的好。 本文将那些用的比较多的几个布局控件(Grid、UniformGrid、StackPanel、WrapPanel、DockPanel以及Canvas)综合起来,布局那个伟大的乌龟。 话不多说,贴运行图和代码。 下面是XAML代码。View Code <Window x:Class="LayoutPractice.MainWindow" xmlns="http://schemas.microsoft.com 阅读全文
posted @ 2012-11-26 18:42 峰顶飞龙 阅读(1028) 评论(4) 推荐(2) 编辑