2012年5月26日

Why is button background defaulting to grey when IsPressed is true

摘要: Hey all, I have a simple problem. Using the IsPressed trigger i want to be able to set the background color of a button to something other than the default grey. Here is what the button looks like when it is not pressedand here is what it looks like when it is clicked Here is the trigger for the but 阅读全文

posted @ 2012-05-26 12:15 刺客mrchenzh 阅读(225) 评论(0) 推荐(0) 编辑

2012年5月23日

Wpf开源收集

摘要: 1,到底有哪些开源MVVM框架? 前面介绍了WPF的基本概念和一些相关知识,我们了解到开发WPF应用程序可以使用现成的框架和模式,最为合适的莫过于时下正热的MVVM模式,所以这里我们也列出针对MVVM模式的已有开源框架: 图3 上面除了WPFToolKit和MEF之外都是一些常用的MVVM框架,连带自己开发的一共是八个,所以自己也取了一个响亮的名字——MVVM 八大框架!圣殿骑士本人实际项目中只用到了三个框架,之前WPF使用过MVVM Helpers,在Silverlight项目当中用过MVVMLight+MEF,后来就一直使用自己开发的框架,其他框架也研究了很长时间,但都是为了开发MV... 阅读全文

posted @ 2012-05-23 16:07 刺客mrchenzh 阅读(3324) 评论(2) 推荐(3) 编辑

2012年5月15日

.Net WinForm 控件键盘消息处理剖析

摘要: 在WinForm控件上我们可以看到很多关于键盘消息处理的方法,比如OnKeyDown, OnKeyPress, ProcessCmdKey, ProcessDialogKey,IsInputKey等等,那么这些方法是如何被组织的,每一个方法的具体含义又是什么哪?Win32的键盘消息又是如何到达控件上的这些方法的,本文将着重阐述这些问题,对.Net WinForm控件的键盘消息处理过程进行剖析。 1.WinForm消息循环大家都知道WinForm也是依赖于底层的消息机制的,通常我们的WinForm应用程序会以如下方式启动:Code highlighting produced by Actipro 阅读全文

posted @ 2012-05-15 11:30 刺客mrchenzh 阅读(204) 评论(0) 推荐(0) 编辑

ProcessCmdKey

摘要: http://msdn.microsoft.com/en-us/library/7tas5c80.aspx当你在使用此自定义的DataGridView日历列时,可能会想要在编辑日历单元格的时候点击Tab键不结束编辑,这时你就可以重写一下CalendarEditingControl.ProcessCmdKey方法来截获按键。如果你只是想不做任何处理,那么你大可以直接返回true在你判断当前按键是Tab。 protected override bool ProcessCmdKey(ref Message msg, Keys keyData) { i... 阅读全文

posted @ 2012-05-15 11:20 刺客mrchenzh 阅读(507) 评论(0) 推荐(0) 编辑

C#与C++类型对应 (转)

摘要: http://blog.csdn.net/zhouzhangkui/archive/2010/05/30/5635398.aspxview plaincopy to clipboardprint?C#与C++之间类型的对应 Windows Data Type .NET Data Type BOOL, BOOLEAN Boolean or Int32 BSTR String BYTE Byte CHAR Char DOUBLE Double DWORD Int32 or UInt32 FLOAT Single HANDLE (and all other handle types, such as 阅读全文

posted @ 2012-05-15 10:26 刺客mrchenzh 阅读(210) 评论(0) 推荐(1) 编辑

Probably more than you want to know about keyboarding in Windows Forms

摘要: The reason why keyboard handling is so complex, is because, well it’s just complex. Before a control can get called on the OnKeyDown/Press/Up event, we need to filter out several things Shortcuts which execute menu commands (e.g. Control+O on a MenuItem)Navigational keys which shift focus (Tab, arro 阅读全文

posted @ 2012-05-15 10:25 刺客mrchenzh 阅读(361) 评论(0) 推荐(0) 编辑

2012年5月14日

C#高低位

摘要: 在c的写法是这样 xPos = LOWORD(lParam); // horizontal position of cursor yPos = HIWORD(lParam); // vertical position of cursor c#中是这样 int xPos = lParam.ToInt32() & 0x00001111; int yPos = (lParam.ToInt32() & 0x11110000) >> 16; 阅读全文

posted @ 2012-05-14 17:02 刺客mrchenzh 阅读(405) 评论(0) 推荐(0) 编辑

2012年5月9日

一站式WPF--依赖属性(DependencyProperty)一

摘要: Windows Presentation Foundation (WPF) 提供了一组服务,这些服务可用于扩展公共语言运行时 (CLR) 属性的功能,这些服务通常统称为 WPF 属性系统。由 WPF 属性系统支持的属性称为依赖项属性。 这段是MSDN上对依赖属性(DependencyProperty)的描述。主要介绍了两个方面,WPF中提供了可用于扩展CLR属性的服务;被这个服务支持的属性称为依赖属性。 单看描述,云里雾里的,了解一个知识,首先要知道它产生的背景和为什么要有它,那么WPF引入依赖属性是为了解决什么问题呢? 从属性说起 属性是我们很熟悉的,封装类的字段,表示... 阅读全文

posted @ 2012-05-09 10:07 刺客mrchenzh 阅读(225) 评论(0) 推荐(0) 编辑

2012年5月3日

关于WM_NCHITTEST消息

摘要: 我为了移动一个无标题栏的窗体,使用了WM_NCHITTEST消息,这个消息大概如下: 通常,我们拖动对话框窗口的标题栏来移动窗口,但有时候,我们想通过鼠标在客户区上拖动来移动窗口。 一个容易想到的方案是,处理鼠标消息WM_LBUTTONDOWN和WM_LBUTTONUP。在OnLButtonUp函数中计算鼠标位置的变化,调用MoveWindow实现窗口的移动。 注意,拖动标题栏移动窗口的时候,会出现一个矩形框,它提示了窗口移动的当前位置。当鼠标左键放开的时候,窗口就移动到矩形框所在位置。而我们的实现方案中没有这个功能。 要实现此功能,我们必须自己来画这些矩形。 事实上,我们没有必要自... 阅读全文

posted @ 2012-05-03 16:32 刺客mrchenzh 阅读(219) 评论(0) 推荐(0) 编辑

WPF 基础系列2—WPF前世今生

摘要: 1.开篇前言 很多时分了解一项新技术的汗青和趋势经常比这项技术的自身价值还要首要。WPF作为一项新技术(曾经三年多了,或者应该叫老技术了),大家都有需要了解它 的前因后果,特殊是公司的CTO、技术总监、架构师等决策层,因为他们对技术的选型及应器具有抉择权。关于开辟者来说,了解自己正在从事的这个技术的前世 此生,有助于大家更好的熟悉技术自身的价值,也能够避免大家少走一些弯路(圣殿骑士 就走过很多弯路,所以对此比较慨叹)。从IT技术展开的这些年能够看出,技术关于各大公司只是竞争的一种伎俩,而关于大多半轨范员来说技术就是特饭碗以至 于生命,所以人人站的立场分歧,也会构成各自分歧的观念。放眼如... 阅读全文

posted @ 2012-05-03 11:35 刺客mrchenzh 阅读(904) 评论(1) 推荐(0) 编辑

导航