共4页: 上一页 1 2 3 4 下一页 
摘要: 面向下一代的Visual Studio,Visual Basic和C#语言都有了相应的改进。其中最为主要的就是LINQ(Language Integrated Query)的引入。简单来说,LINQ就是把查询语言整合到了代码当中,而且将查询的对象从数据库扩展到所有的可迭代的任何数据结构上面。
本文主要翻译了Microsoft .NET LINQ Preview (May 2006)里面的《Getting Started With LINQ in Visual Basic》这篇文章。原文包含15部分,本译文删除掉了前面的“Introduction”以及后面的“Additional samples”两部分。同时加入了译者在翻译的同时发现的一些问题以及自己的一些想法。
本人很少翻译文章,而且LINQ目前来讲算是比较前沿的技术,在很多的名词和句子方面组织的还不够好,有的译法还欠推敲。译注里面的一些观点只是本人学习中的一些想法,只代表个人观点。希望大家多提意见。阅读全文
posted @ 2007-02-13 16:14 妖居 阅读(2371) 评论(9) 编辑
摘要: 插件功能给软件的使用者可以扩充软件功能的机会。我们不可能让软件适用于所有人,也不是所有的人都会出资帮助你实现他们的需求。插件功能提供了一个软件的高度可扩充性,允许用户作为软件的二次开发者,继续完善软件的功能。
本文通过模仿Visual Studio .Net Addin的实现方法来实现一个提供插件功能的软件。包括提供插件的软件制作、插件的制作一个相关的技术知识。阅读全文
posted @ 2007-01-08 17:28 妖居 阅读(2892) 评论(18) 编辑
摘要: DataGridView虽然好用,但是如果数据量比较大的话就会出现性能的问题。网上提供的一般做法是通过虚拟模式(Virtual Mode)来加速。但是有的时候,可以通过简单的设置来加速DataGridView。(1)使用绑定数据。就是通过加载DataTable然后通过BindingSource来和DataGridView.DataSource进行交互。(2)不要使用AutoSizeColumnsM...阅读全文
posted @ 2006-12-12 10:47 妖居 阅读(2382) 评论(3) 编辑
摘要: 防止我们的软件被非法盗用,目前主要用两种办法:注册码、在线激活。目前微软都是使用在线激活的方法。不可否认这一方法目前来讲还是最难于破解的。因为所有的激活程序都是通过Web Service在服务器运行。但是缺点是目标机器必须能上网。而且要有一个24小时在线的服务器。而对于我们的小程序来说,没有必要这么兴师动众的。我们可以使用简单的“用户名+注册码”的办法。使用.NET自带的RSA算法的实现执行不对称加密和解密生成并验证注册码。阅读全文
posted @ 2006-12-01 18:18 妖居 阅读(2395) 评论(5) 编辑
摘要: 在MSDN里面看到关于StreamReader.Peek 方法的解释,备注里面说Peek 不会更改 StreamReader 的当前位置。如果当前没有更多的可用字符,则返回值为 -1。 但是假设C:\CMSG.LOG文件一行内容超过1024字节后,运行下面的程序就会发现Peek之后,Position变成了1024了。但是此后如果再运行Peek就没有问题了,Position不会改变。难道MSDN说的...阅读全文
posted @ 2005-09-27 09:42 妖居 阅读(1374) 评论(5) 编辑
摘要: 下载并注册了VB2005 Beta 2,得到了一个MS的E-Learning帐号。于是乎趁着闲暇看了里面的一本书《Introducing Visual Basic 2005》。依靠我CET4水平的英文总算是看完了,发现2005以前不知道的一些新特性。不敢独享,找了些个我觉得有趣的Post上来,大家可以看看。由于本人对ADO.NET和ASP.NET不是很熟悉,所以这两部分没有写。IL的部分估计有“装配脑袋”大哥一个人就可以搞定了,不敢班门弄斧,于是主要写了关于IDE和Form的改善。写的仓促,大家凑和着看。阅读全文
posted @ 2005-05-18 13:10 妖居 阅读(2842) 评论(8) 编辑
摘要: 今天上CSDN,看到讨论VB.NET关于函数返回值的问题。简单的说就是为什么我们在函数内部定义的变量,通过Return返回之后,调用端可以正常接收到这个值,而不会由于这个对象释放而无法得到。我第一次做C程序的时候就遇到了相关的问题,我在函数里面定义的变量,当我通过return返回的时候,由于这个函数返回,使得所有函数内的局部变量都自动释放了,结果调用端得到的结果就是错误的。为了解决这个问题,我只能...阅读全文
posted @ 2005-05-17 11:02 妖居 阅读(4553) 评论(8) 编辑
摘要: 今天把最后一部分放上来,然后就可以回家休息了。 最后一部分内容比较碎,主要包括了如何创建.NET的向导(通过这个向导我们可以在“新建工程”对话框里面建立我们自己定义好的解决方案文件)。DTE使用的一些小技巧,包括了使用状态栏、Undo技术、ExecuteCommand方法。最后是讲述如何手动配置一个Add-in工程,说明了Add-in工程文件以及注册表项目的内容。 到此为止,《Add-in...阅读全文
posted @ 2005-04-29 14:53 妖居 阅读(2221) 评论(13) 编辑
摘要: 这几天忙着给新人培训,没有时间Post东西了。今天终于有个喘息的机会,把前几天写的一部分拿出来。后面的部分可能写起来会更加缓慢了。 这部分讲了IDesignerHost提供的事件,通过这些事件我们可以侦测DesignerHost上面控件的变化和选择控件的变化。里面有个例子,模拟了.NET IDE中Property窗口上面ComboBox的功能。另外一部分说的是如何读写资源文件。这部分本来不是Ad...阅读全文
posted @ 2005-04-22 16:36 妖居 阅读(1432) 评论(2) 编辑
摘要: 记得CSDN上面以前曾经有人问过,有没有像IE地址栏那样能够自动记忆以前输入过的文字,然后通过下拉列表选择的控件。我的印象是.NET没有提供这样的控件,众多.NET高人肯定做过,但是我一时找不到。这几天无聊,于是自己试着做了一个。可以将此控件加入.NET的工具箱,通过拖拽放置到画面上。

主要的实现方法就是通过一个隐藏在TextBox后面的ListBox来显示下拉列表,用户选择了之后可以将对应内容填充到TextBox里面。而TextBox里面输入了文字之后可以筛选并显示相关的曾经输入过的项目内容。

一时高兴做的,所以没有特别全面的测试。我把源代码放上来,欢迎园子里面的哥哥姐姐们给我指点指点。如果您有什么更好的想法,非常欢迎Feedback。



源代码和Sample合并在一个Solution里面下载阅读全文
posted @ 2005-04-19 16:51 妖居 阅读(1769) 评论(3) 编辑
共4页: 上一页 1 2 3 4 下一页