摘要: 下载地址:http://www.xdowns.com/soft/31/93/2012/Soft_84985.html源码要点核心:生成添加水印文字后的图片。using System;using System.Collections.Generic;using System.Text;using System.Windows;using System.Windows.Media;using System.Windows.Media.Imaging;namespace ImageProc{ public class WaterText { /// <summary> ... 阅读全文
posted @ 2012-01-26 17:34 东邪独孤 阅读(271) 评论(0) 推荐(0) 编辑
摘要: 作为春节前的最后一篇技术文章,写点什么呢?想了一下,就聊聊WPF中的命令吧。命令这东西很有意思,简明一点说,它是一种逻辑,但这种逻辑可以被多种源调用,可以作用于多种目标上。如我们常见的“复制”,“剪切”等命令,它们本身就是一种逻辑——对剪切板进行操作的逻辑行为,不过,你会发现,它们不仅可以在菜单项中使用,也可以在工具栏按钮上使用,也可以通过快捷键Ctrl + C等来调用。菜单项工具栏按钮从上面的举例可以发现,命令可以使用具备相同功能的代码逻辑变得通用化,就像我们封装了一个类一样,可以在N个地方进行调用,这样我们不必每次都写相同的代码。.NET类库已为我们准备了许多通用命令,使用起来也很简单,这 阅读全文
posted @ 2012-01-22 15:11 东邪独孤 阅读(572) 评论(0) 推荐(0) 编辑
摘要: 这个题目,我姑且这样叫吧,照例,我们先来分析一下需求。比如有一个设置密码的功能,但用户希望能够自己选择密码的加密算法,如MD5、HMAC、SHA1等,然后程序会根据用户所选择的算法对密码进行加密并存入数据库,同时在配置文件中记录下用户的选择。按照一般的思路,我们可能会做一个分支判断,如switch( 用户的选择 ){ case "MD5": MD5 md5 = MD5.Create();.............. break; ...........}呵呵,其实我们不必要这样做,来,先来看看MD5... 阅读全文
posted @ 2012-01-15 11:54 东邪独孤 阅读(326) 评论(0) 推荐(0) 编辑
摘要: 先说说需求,也就是我们要达到的效果,希望扩展按钮控件,增加一些属性,但同时我们希望默认事件仍使用Click事件,不过,在事件参数中,我们希望能够传递更多的信息,而不是Button.Click默认的参数。当然,我们首先要写一个自定义的事件参数,为了简单起见,我们的自定义按钮控件,增加一个TagNumber属性,它传递一个整型数据,当我们处理控件的Click事件,能够从事件参数类实例中取得我们在这个属性中设置的值,因此,我们需要一个MyButtonClickAgre,它从EventArgs类派生。 /// <summary> /// 自定义事件参数类。 /// </summary 阅读全文
posted @ 2012-01-14 21:26 东邪独孤 阅读(304) 评论(0) 推荐(0) 编辑
摘要: LINQ查询表达式的子句如select,where,from等都是比较简单的子句,相信各位多练习练习,再结合MSDN的例子,基本上是可以理解的,因此,本文只挑几个有代表性的,以及有些难理解的子句来简述一下。一、where子句。在SQL中,筛选语句常用的表示方式如“select * from Users where uName = 'DMIN'”,这个SQL语句就带有WHERE子句,其实,在LINQ中也类似,只不过放的位置不一样。请看下面的例子。 int[] Source1 = new int[] { 10, 50, 22, 38, 91, 17 }; ... 阅读全文
posted @ 2012-01-12 21:57 东邪独孤 阅读(274) 评论(0) 推荐(0) 编辑
摘要: 为了能让初学者更快速地掌握,在系列文章中,我尽可能地避开理论讲解,一则对于入门者来说,过多的理论叙述反而会降低大家学习编程的兴趣,二则,官方文档的资料很详细,我说了也是废话。因此,我会尽可能地多举些简单的例子,让初学者能够看得懂,呵呵,当然了,学习LINQ,还得有一定C#语法基础。上一篇文章中我们讨论了最简单的LINQ语法,也是最基本的语法和表达式编写结构,本文我们就来谈一谈几个重要的概念。一、查询三步曲。创建和使用LINQ,有三个必备的步骤:1、Get——数据从哪里来?得到数据源;2、Create——创建查询表达式,这是核心;3、Execute——执行查询,并得到相应结果。好的,我们下面按照 阅读全文
posted @ 2012-01-09 21:31 东邪独孤 阅读(219) 评论(0) 推荐(0) 编辑
摘要: 关于LINQ(语言集成查询)是.NET 3.5和Visual Studio 2008以上版本中引入的一种有趣的全新概念,语言版本有VB和C#,由于C#与.NET平台结合最为紧密,也是MS当初首推的语言,因此,本系列文章的示例代码都使用C#。MSDN上资料非常详细和完备,所以,我也不打算讲得过于详尽,再说,网上也有不少博文都阐述过LINQ,如果我还炒冷饭,就有抄袭之嫌。其实,很多时候我们不必要到处去搜,到处去问人,MSDN上的参考文档已经很优秀了,而且还有多语言版本,也请了牛B人物进行人工翻译,所以说啊,咱们.NET开发者是非常幸运的,一来有VS这个世界级领先的开发工具(目前不好的一点是性能,据 阅读全文
posted @ 2012-01-08 17:55 东邪独孤 阅读(211) 评论(0) 推荐(0) 编辑
摘要: 这几天忙着一些小事,也没有写什么了,今天,我们来玩一个比较简单的东东。就是在MVC下如何返回图片,相信,在传统WebForm下,大家都晓得怎么弄,方也不限于一种,但是,在架构较为严格的MVC里面,刚开始接触的朋友,可能不太清楚如何实现。首先,我们应当从控制器入手,昨天有位朋友问我,控制器一般不都是return View的吗?那怎么返回图片? 当然,Controller类也没有return Image 的,上次我们的例子是返回JSON,其实我们可以让其返回一个文件流,一开始我也想过使用ViewData,但这个在视图页面上只能通过服务器端代码来操作,如果希望用JS,就不那么好办了。Controll 阅读全文
posted @ 2012-01-07 09:28 东邪独孤 阅读(551) 评论(0) 推荐(0) 编辑
摘要: 我为啥称之为“动态数据模板”?先看看下面的截图,今天,我们就是要实现这种功能。大概是这样的,我们定义的DataTemplate是通过触发器动态应用到 ComboBoxItem 上。这个下拉列表控件绑定了一个Person集合,Person类的定义如下: public class Person { public string Name { get; set; } public int Age { get; set; } public string Email { get; set; } public override string... 阅读全文
posted @ 2012-01-03 08:41 东邪独孤 阅读(286) 评论(0) 推荐(0) 编辑
摘要: 声明:本教程是误人子弟的,如果你想成为高手,那千万不要往下读。在ASP.NET 的WebForm中,你可能发现实现AJAX很简单,因为.NET类库都为你准备好了UpdatePanel控件,用该控件来实现AJAX就等于一行代码都不用写。然而,在MVC里面,几乎所有的服务器控件都失效了,那怎么办呢?用传统的JS代码的话又会很复杂,呵呵,放心,别忘了,当下jQuery是很流行的,做WEB开发自然是少不了JQ,虽然严格上说,它是提供给前台的网页设计人员使用的,但对于AJAX,我们不妨也用上它。今天,我们一起来做一个简单的玩意儿,通过JQ来实现在MVC框架下的AJAX功能吧。1、新建一个ASP.NET 阅读全文
posted @ 2012-01-02 11:01 东邪独孤 阅读(283) 评论(0) 推荐(0) 编辑