11 2009 档案
摘要:序列化简言之是这样一种能力:能够把复杂的对象(Object)变成某种格式的字符串(常见的格式有xml,string,二进制文件等),这样可以方便的在各种系统中传输或交换(比喻socket编程中的数据包只能用byte[]传输),接收方得到该字符串后,通过反序列化可以还原为复杂对象,进而调用对象的方法或属性 -- 跟反射有点沾边:)这里先给出一个WinForm的序列化例子,功能为通过打开文件对话框选择...
阅读全文
摘要:silverlight中的socket通讯支持,让sl开发基于web的聊天工具成为了可能,后来OpenFileDialog,SaveFileDialog的出现,更使得边聊天边传送图片(文件)得以实现,最新的SL4中又加入了摄像头支持,也许不久真的可以用silverlight开发出功能强大的视频聊天系统,目前唯一还没有解决的是p2p问题,根据sl3的sdk文档所述:Socket 类为网络通信提供了一...
阅读全文
摘要:这二天在研究webabcd的socket多人聊天室,想尝试增加一些功能,比如:允许用户除发送文字外,还能发送图片或文件。问题:socket发送数据时,只能发送byte[]数组,且无法附带其它用户自定义参数,服务端如何知道用户发过来的是文字还是图片或是文件呢,所以只能在byte数组上动脑筋了.silverlight中,用户选择的图片或文件,都能变成FileStream,近而变成byte数组,初步想法...
阅读全文
摘要:先来看一下简单的多线程控制台程序:[代码]入口方法Main里,创建了二个线程,分别调用方法t1与t2,再加上主线程本身,一并有三个线程,运行后,三个线程都在计数输出,结果类似如下:t2的x:1t1的x:1主线程中的x:1t2的x:2t1的x:2主线程中的x:2t2的x:3t1的x:3主线程中的x:3t2的x:4t1的x:4主线程中的x:4t2的x:5t1的x:5主线程中的x:5三个线程的顺序,在这...
阅读全文
摘要:一般来讲,当启动一个应用程序时,系统里就生成了一个进程, 这个进程拥有自己的内存空间。(我们平时用windows的任务管理器看到的也就是进程)但也有特殊:比如IE8,它采用了多进程设计,打开IE8后,会在任务管理器里有多个iexplore.exe每个进程内部可以创建多个线程, 这些线程之间共用一个进程的内存空间(即线程之间可共享内存)。我们做多线程开发,其实就是在同一个进程内部创建了多个线程。
阅读全文
摘要:单线程的winfom程序中,设置一个控件的值是很easy的事情,直接 this.TextBox1.value = "Hello World!";就搞定了,但是如果在一个新线程中这么做,比如:[代码]运行时,会报出一个无情的错误:线程间操作无效: 从不是创建控件“textBox1”的线程访问它。究其原因,winform中的UI控件不是线程安全的,如果可以随意在任何线程中改变其...
阅读全文
摘要:近日在研究webabcd的silverlight socket聊天室时,发现一个很眼生的东东SynchronizationContext(它不认得我,我也不认得它,哈哈),摆渡了下,发现园子里有一位兄弟的文章解释得不错,转贴与此,原文:http://www.cnblogs.com/Kevin-moon/archive/2009/01/13/1374353.html理解Synchronization...
阅读全文
摘要:先看效果图:步骤:1.先启动Microsoft Expression Design 3a.画一个正圆,再随便打几个字,同时选中文字和圆b.选择菜单栏中的"对象"-->"路径上的文本"-->"附加文本",调整文本内容,间距等,让其正好布满圆圈,调整好以后,再把圆形的填充和边框去掉(即无填充,无边框)c."文件"-->"导出",格式选择"Xaml Silverlight3画布"2.启...
阅读全文
摘要:一、委托Delegate一般的方法(Method)中,我们的参数总是string,int,DateTime...这些基本的数据类型(或者没有参数),比如[代码]但是有些时候,我们希望把一个方法本身当做参数传递给另一个方法,比如myObject.callMethod(HelloWorld);在没有委托之前,这是一件极困难的事情,委托出现以后,这就是一件很容易的事情了,简单点讲:委托就是一种能把方法当...
阅读全文
摘要:原文:http://blog.csdn.net/banmuhuangci/archive/2009/05/16/4192031.aspx刚接触Silverlight的时候,除了其异步应用WCF、流媒体、动画效果等方面外,Socket是最另我兴奋的功能。在Web上实现Socket虽然不是什么新鲜事了,Activex,flash等都可以实现这样的效果,但是Silverlight这样方便的运用Socke...
阅读全文
摘要:Silverlight4终于支持摄像头和麦克风了,网页上的视频聊天将不再是Flash的专利!今天在一个老外的网站上看到webCam的使用示例(http://elegantcode.com/2009/11/20/silverlight-4-webcam-a-quick-glance/),非常简单,转帖整理如此:界面:一个Button,一个Rectangle,哈,够简单吧图1按下按钮,将连接到摄像头关...
阅读全文
摘要:不知道为啥,最近很热衷于研究相册效果:)视觉状态(VisualState)真的太好用了,借一句本山大叔的台词:"谁用谁知道"PS:以后帮美女做相册这种“讨女生欢心”的活儿,咱程序员也可以自己来了,光棍程序员们赶紧加油学SL啊,没准终生大事就靠它了!在线演示地址:http://images.24city.com/jimmy/vsmAlbum/这个里面把图片放大,图片缩小,加载...
阅读全文
摘要:SL4终于支持网络摄像头,很是激动,以后可以完全不用flash那一套了,兴奋之余,发几个美女纪念一下,效果图如下:在线演示地址: http://images.24city.com/jimmy/photoshow/ 源码是根据silverlight.net首页动画效果反编译得来的,下载地址见http://www.cnblogs.com/yjmyzz/archive/2009/11/12/16020...
阅读全文
摘要:由于64位操作系统不支持Microsoft OLE DB Provider for Jet驱动程序,也不支持更早的Microsoft Access Driver (*.mdb)方式连接。所以用于 Access 和 Excel 数据库的 Microsoft OLE DB Provider for Jet 在 64 位版本中不可用,也就是说,如下两种连接字符串都已经无法正常工作了: "Provider...
阅读全文
摘要:先要开启PAE功能,方法如下:打开 Boot.ini 文件,然后将 /PAE 参数添加到boot.ini中,如以下所示:multi(0)disk(0)rdisk(0)partition(2)\%systemroot%="Windows Server 2003, Datacenter Edition" /PAE 如果CPU、主板、操作系统都支持并启用PAE(物理地址扩展),那么此时的物理内存地址总线...
阅读全文
摘要:相册/图片切换广告等很多常用小应用中,服务器返回一组图片的uri,然后silverlight利用WebClient异步加载,如果要严格控制加载顺序的话,可以利用Stack(堆栈)或Queue(堆栈)处理,思路:不要全部一起加载,先加载第一个,在完成的异步回调过程中,继续发起一下次异步。回想我们在ajax开发中,有一种技术叫"http长连接",在每一次ajax异步请求完成时,继续发起下一个异步请求,...
阅读全文
摘要:1.导入命名空间xmlns:clr="clr-namespace:System;assembly=mscorlib"2.然后就可以这样用了Application.ResourcesResourceDictionary clr:String x:Key="ShowcaseLocation"http://www.silverlight.net/showcase//clr:String...3.使用 var s = Application.Current.Resources["ShowcaseLocation"].ToString()源文件:http://files.cnblogs.
阅读全文
摘要:{x:Null}:用于设置某属性值为Null,比如<Rectangle Fill="{x:Null}" />,其实就相当于<Rectangle />,个人感觉这个纯属MS的多余设计另外要注意一个问题:<Rectangle x:Name="rect" Stroke="Black" Width="90" Height="90" MouseLeftButtonUp="Rec...
阅读全文
摘要:下午心血来潮,想看看MS的开发人员是如何做silverlight的,出于学习目的把silverlight.net官方首页的图片轮换通过分析html源代码,下载xap后反编译了一下,分析后的源代码略作修改备份于此,希望对大家学习silverlight有用,请勿用于非法商业用途。(个人觉得对于初学者还是有一些可以借鉴学习的地方,一个貌似简单的图片轮换,用到了wcf,stack堆栈,异步加载,visua...
阅读全文
摘要:本文不涉及高深的设计模式(比如mvc,mvvm之类),也没有太多的编程技巧,只是记录自己做为asp.net开发者学习silverlight中自定义控件开发的一些过程,高手请绕过。先推荐一篇不错的文章http://www.cnblogs.com/carysun/articles/1259025.html写得很全面,只不过图片讲解不够丰富,初学者可能有些感到跳跃性大了一些。正文开始:做过asp.net...
阅读全文
摘要:“逐帧动画”与“播放GIF”貌似二个风马牛不相干的问题,其实不然!因为silverlight中的image控件不支持直接把gif动画做为source,所以象做动画常用的"走路的小人","加载loading小动画"...这类经典gif素材,无法直接使用,只能转化为逐帧动画来处理。nasa(silverlight MVP)给出于二种经典的办法:1.类似老...
阅读全文
摘要:asp.net开发中,数据绑定是一个很简单的概念,控件与数据绑定后,控件可以自动把数据按一定的形式显示出来。(当然控件上的值改变后,可以通过提交页面表单,同时后台服务端代码接收新值更新数据)silverlight中利用控件显示数据这一基本功能当然还保留,只不过因为silverlight应用不需要刷新(也不存在提交表单),所以当控件属性或数据源变化后,在如何相互影响这一块的处理上有所不同。引用一段s...
阅读全文
摘要:所谓的deeplink技术是为了解决silverlight(或flash)之类的RIA Web应用无法被搜索引擎收录而出现的,属于SEO范畴。就拿最常见的企业网站为例,里面有企业简介(About),产品展示(Product),联系我们(AboutUs)...等常见模块,如果全站都用silverlight/flash来做,default.html页面上用object嵌入一个xap/swf就完事了,搜...
阅读全文
摘要:这篇应该是"silverlight3的"伪"3D续--图片横向轮换"的后续篇章,代码基本上从上篇代码修改而来,界面则抄袭了nasa的相册,自己一直做数据库相关的电子商务开发,虽然断断续续学习了一阵silverlight,但对RIA开发还没找着感觉,基本上仍处于从asp.net程序员看silverlight的初级阶段,这个权当练手,废话不多说,直接看效果图:演示地址:http://images.24...
阅读全文
摘要:昨天在调试项目时,意外发现一个奇怪的问题,实在不知道如何准确描述,所以随便起了个标题。项目中有一个wcf供jquery调用,wcf示例代码如下:[代码]简单得不能再简单了,返回一个json格式的Hello World!在非IE浏览器里用 http://localhost/wcf/service.svc/Test/ 测试(因为IE7以上版本好象不能直接打开访问wcf中的办法,会提示禁止访问,所以只能...
阅读全文
摘要:先准备一个基本的xaml页面[代码]结构不复杂,里面就放了一张图片,同时预置了一个动画storyTest,里面把几种常见的动画形式都列在里面了,下面就来看看如何动态改变storyTest动画的属性(比如改变旋转的起始角度之类)1.直接加x:Name,然后引用赋值[代码]注意高亮部分,然后象这样引用[代码]这样我们就把00:00:01秒时角度由360改为20度了2.利用StoryBoard的Chil...
阅读全文