2012年7月21日
摘要: RichTextBox是一个支持RTF的文本框,但很多情况下我们并不希望用户采用快捷键(如CTRL+V)来粘贴有格式的内容,或者我们需要清除用户粘贴的内容的格式,怎么办呢? 其实非常简单: 去掉格式:把剪切板的字符串取出来放到一个变量中(这个过程就去掉格式了),再将变量中的值设回剪贴板,然后粘贴就o... 阅读全文
posted @ 2012-07-21 12:13 Memory 阅读(1621) 评论(0) 推荐(0) 编辑
  2011年10月17日
摘要: 多线程和异步操作的异同多线程和异步操作两者都可以达到避免调用线程阻塞的目的,从而提高软件的可响应性。甚至有些时候我们就认为多线程和异步操作是等同的概念。但是,多线程和异步操作还是有一些区别的。而这些区别造成了使用多线程和异步操作的时机的区别。异步操作的本质所有的程序最终都会由计算机硬件来执行,所以为了更好的理解异步操作的本质,我们有必要了解一下它的硬件基础。 熟悉电脑硬件的朋友肯定对DMA这个词不陌生,硬盘、光驱的技术规格中都有明确DMA的模式指标,其实网卡、声卡、显卡也是有DMA功能的。DMA就是直 接内存访问的意思,也就是说,拥有DMA功能的硬件在和内存进行数据交换的时候可以不消耗CPU资 阅读全文
posted @ 2011-10-17 11:51 Memory 阅读(253) 评论(0) 推荐(0) 编辑
  2011年7月14日
摘要: 我觉得先登录后启动应用主程序是一个很经典的问题,基本上如果要写一个应用程序都会用到这个的小环节。我在这个问题上挣扎了大半天才找到解决方案,我的实现方法我觉得有点不正宗,如果有哪位高手知道更好的方法欢迎留言指导!!首先来说一下传统C#在WinForm中的实现方法,基本上是在Main函数中根据第一个启动窗口的DialogResult来判断是否实例第二个窗口,DialogResult是在第一个窗口中根据登录情况来设置的。代码如下 主函数代码: staticclassProgram { [STAThread] staticvoidMain() { try { Application.EnableVis 阅读全文
posted @ 2011-07-14 12:21 Memory 阅读(1362) 评论(0) 推荐(1) 编辑
  2011年6月23日
摘要: . delegate 委托可以理解为cxx 语言中的函数指针,标示了方法调用的回调函数的规范。强类型,便于编译时检查是它的最大优点,从此可以和void * 说再见了。2. event 事件用以delegate委托声明事件,标示响应该事件的回调函数必须符合其声明委托的定义3. lambda 表达式在.net世界中表现为匿名委托,之前又要提到匿名方法(函数)01publicclassTest{02publicvoiddelegateClose();//声明一个无参无返回值的委托03publiceventClose CloseEvent;//声明一个Close对应事件04}05staticvoidM 阅读全文
posted @ 2011-06-23 14:43 Memory 阅读(309) 评论(0) 推荐(0) 编辑
  2011年6月22日
摘要: 1.资源类别 asp.net中的资源的存储形式有: (1).txt :它以嵌入资源(BuildAction:Embed Resource)的形式添加到Assembly,只支持字符串类型。 优点:适合保存大量类型单一的数据 ex:新闻的正文 缺点:容易被修改,读取数据麻烦 操作数据: System.IO.Stream str = System.Reflection.Assembly.GetExecutingAssembly().GetManifestResourceStream("ResourceDemo.language.txt"); (2).resx :以嵌入资源的形式添 阅读全文
posted @ 2011-06-22 17:29 Memory 阅读(959) 评论(0) 推荐(0) 编辑
  2011年4月21日
摘要: 文章出处:http://topic.csdn.net/u/20080627/14/8a91b33a-f35c-4303-85b5-e0a8da462202.html1 多行匹配2 不以某某开头 ,比如不以www开头3 不区分大小写4 2个单元的或操作,比如 www ¦ 3w 都可以这种火龙果回答:1:多行匹配在默认的情况下 . 是不能匹配行结束符的(行结束符有 6 个,具体的可以看看 Pattern 的 API DOC)同样,可以像不匹配大小写匹配那样使用编译参数:Pattern.DOTALL如果还得区分大小写的话,还得加上上面说到的 Pattern.CASE_INSENSITIVE 阅读全文
posted @ 2011-04-21 16:27 Memory 阅读(8872) 评论(2) 推荐(0) 编辑
  2010年10月21日
摘要: 产品为了适用于西亚的客户,需要支持阿拉伯语言以及调整界面布局以满足阿拉伯国家用户的使用习惯. 阿拉伯国家的使用习惯完全跟我们不一样,他们的界面都是从右到左布局的。 比如:一般我们的网站在左边有个导航栏,习惯从左到右操作。它们的导航栏却在右边,习惯从右到左操作. 经过研究得到以下结论: 1. 在silverlight中支持阿拉伯布局是可行的。   方法:设置控件的FlowDirection属... 阅读全文
posted @ 2010-10-21 10:48 Memory 阅读(277) 评论(0) 推荐(0) 编辑
  2010年7月7日
摘要: 今天遇到一个问题:需要在点击红色框中的滚动条时,将窗体在最上层显示,点击datagrid的其它地方都能让窗口最上层显示,唯独滚动条不可以。但是在silverlight不能获取到DataGrid的滚动条对象,这点很郁闷。按理说它是DataGrid的一部分,在DataGrid的控件范围内点击都能触发DataGrid的鼠标点击事件,事实却让我很失望。最后找到以下解决方法:1.在DataGrid中查找滚动... 阅读全文
posted @ 2010-07-07 18:50 Memory 阅读(1413) 评论(3) 推荐(0) 编辑
  2010年5月17日
摘要: 所谓的开放API(OpenAPI)是服务型网站常见的一种应用,网站的服务商将自己的网站服务封装成一系列API(Application Programming Interface,应用编程接口)开放出去,供第三方开发者使用,这种行为就叫做开放网站的API,所开放的API就被称作OpenAPI(开放API)。网站提供开放平台的API后,可以吸引一些第三方的开发人员在该平台上开发商业应用,平台提供商可以... 阅读全文
posted @ 2010-05-17 20:04 Memory 阅读(374) 评论(0) 推荐(0) 编辑
摘要: 见识propertymetadata假如你尝试过自己定义一个dependencyproperty,你一定会发现在dependencyproperty.regist方法中可以传入一个propertymetadata类型的对象,这就是属性的"metadata"。假如你对.net框架比较了解,你对"metadata"这个词应该不生疏,简单地说,metadata就是一个用来描述对象自身的对象,同理,这里的... 阅读全文
posted @ 2010-05-17 19:20 Memory 阅读(1297) 评论(0) 推荐(0) 编辑