随笔分类 - 07.WPF/Silverlight
摘要:在web开发中,带checkbox的tree是一个很有用的东东,比如权限选择、分类管理,如果不用sl,单纯用js+css实现是很复杂的,有了SL之后,就变得很轻松了解决方案一:利用Silvelright ToolKit(微软的开源项目),项目地址http://silverlight.codeplex.com/在线演示地址:http://silverlight.net/content/samples/sl4/toolkitcontrolsamples/run/default.html解决方案二:telerik公司的Rad for Silverlight商业控件(收费控件)在线演示地址 http:
阅读全文
摘要:默认情况下,windows phone7开发工具只能在windows7上安装,我的本本上好不容易把win2008 r2以及相关软件安装好,总不能因为这个又把win7装回去吧,百度了一下,还真有人研究这个,把解决方法贴在这里备份:1、下载wp7开发工具安装文件,下载地址:http://www.microsoft.com/downloads/en/details.aspx?FamilyID=04704acf-a63a-4f97-952c-8b51b34b00ce&displaylang=en2、将下载到的文件(vm_web.exe)解压。方法:在命令行模式下,输入vm_web.exe /x
阅读全文
摘要:注:这个程序最初是专为iOS平台开发的(当然是公司外包给一个兄弟做的,现在已经在itunes store里发布了,直接在itunes store里搜索"星座运程合缘"就能找到,上线一周左右,已经有7位用户下载购买了).年前无大事,在webcast上看了"林永坚(Jake Lin)"的wp7视频两天,发现跟传统的SL开发有90%以上完全相同,如果您有SL的开发或学习经验,基本上只要一二天,就能直接转行做WP7开发,简直太方便了。(比如象我这样,整套视频只看了一半就已经可以动手做一些小应用了)下面是将“星座运程合缘”移
阅读全文
摘要:Silverlight从其它系统获取外部数据的常规途径无非下面2种:1、直接远程加载文本或xml文件 (直接请求ashx/aspx,然后在ashx/aspx上输出信息也可以归入这一类)2、通过wcf/webService取得数据(当然,sl跟本机的sl之间也能交换数据,但这个用处有限,此外通过socket也能拿到数据,但是socket要玩好并不容易,难度系数有点高,本文不做讨论)而返回的数据格式,...
阅读全文
摘要:sliverlight中一个用户自定义控件(比如MyControl.xaml)如果注册了CompositionTarget.Rendering事件(相当于Flash中的Enter_Frame,在进入每帧时触发),然后在MainPage.cs用代码动态添加时,有二个细节要注意:1、MyControl实例在new出来以后,如果还未添加到MainPage.xaml中的根容器中,其对应的Compositi...
阅读全文
摘要:昨晚在一国外博客上(从域名后缀pl上猜想应该是波兰)看到这种效果(Mouse Avoid 躲避鼠标),是基于Flash/AS3开发的,这个示例把弹性运动,摩擦力,均加速运动等多种物理学原理综合运用在一起,产生了不错的交互效果。在线演示as3.0代码如下:测试代码:看完AS3的代码后,我就在想如何移植到Silverlight上来,下午抽空研究了一下,基本上用Silverlight还原出来了,但由于S...
阅读全文
摘要:今天做项目时遇到一个小需求:要将字符串中的回车符号替换成其它符号(比如"<br/>")。 考虑到不同的情况下,有些系统中是用\r\n作回车符,有些仅用\n就代表回车符了。以前都是用String类的Replace方法连接替换多次来处理的,今天突然想改为正则表达式一次性搞定,但又怕性能上消耗太大,于是写了下面的测试代码:输出结果:11111 * 22222 * 33333 * 44444 ...
阅读全文
摘要:题外话:个别朋友总是问我同样的问题,做为一名c#/silverlight程序员为啥还要学flash ?回 答:看日本片时,就不能对照看欧美的么? 不体会日本的细腻,又怎能感觉到欧美的粗放;同样都是web相关的技术,不必报门户之见;何况这二者有很多可以相互借鉴的东西。注:这个例子来自[FL车在臣](在blueidea上又名“寂寞火山”)翻译的“Animation ...
阅读全文
摘要:Silverlight/WPF中,如果要在多线程中对界面控件值做修改,用Dispatcher对象的BeginInvoke方法无疑是最方便的办法 ,见:温故而知新:WinForm/Silverlight多线程编程中如何更新UI控件的值但今天发现WPF中的BeginInvoke却无法自动将匿名方法/Lambda表达式转变成Delegate类型(注:对委托,匿名方法,Lambda感到陌生的朋友先阅读温故...
阅读全文
摘要:状态检测主要包括二个方面:是否安装了摄像头,摄像头是否被其它程序占用视频截图有二种方法:一是直接利用CaptureSource类的CaptureImageAsync异步截屏,另一种是直接利用WriteableBitmap截屏幕,二种截屏方法的区别在于,CaptureImageAsync始终截的是视频原始内容,而直接用WriteableBitmap对指定区域截屏时,如果视频上面还有其它控件(比如Te...
阅读全文
摘要:Silverlight3中的scoket只支持tcp协议,而对于udp一直以安全原因拒绝支持,但在silverlight4中可以惊喜的发现 System.Net.Sockets下多出了二个类:UdpAnySourceMulticastClient,UdpSingleSourceMulticastClient根据msdn官方的解释:http://msdn.microsoft.com/en-us/li...
阅读全文
摘要:用MS的silverlight来生成Adobe的pdf文档?象不象到肯德基买麦当劳? 哈...言归正传:首先要用到下面二个开源库1.开源项目 http://silverpdf.codeplex.com/ silverlight的pdf开源库2.FluxJpeg 借助这个可将位图转换化base64字符串,项目官方地址已经找不到了,反正google,baidu一下N多下载注:社区里总会有一些好心人做善...
阅读全文
摘要:曾经发过一篇如何在Silveright中利用XmlSerializer序列化对象的文章“Silverlight中的序列化”,限于当时的认识有限,一度以为silverlight只有这一种办法,今天意外发现,其实还有更好的方式,特此做一个汇总与比较1.json序列化方式silverlight支持json字符串已是众人皆知的事情,没啥好说的,有点容易让人误导的是:我们在vs的si...
阅读全文
摘要:主要代码修改自园子里"smjack"的【原】改进了的"利用Silverlight实现类似iGoogle的浮动拖拽效果",修改说明:1.将原来的列宽度等分,改为允许非等分2.增加了最大化,最小化,关闭功能3.模块太多,导致Silverlight显示不下时,自动加上垂直滚动条本想将模块设置功能抽时间完成一下,但近期又迷上ROR了,不知道什么时候才会完成这个东东(也许永远不会完成),先把这几处修改完成的...
阅读全文
摘要:原文:http://www.cnblogs.com/zhouyinhui/archive/2007/07/07/809553.htmlyjmyzz提示:读懂以下内容可能需要掌握(高中)数学中的"向量运算",以及(大学)数学“线性代数”中的"矩阵运算",如果您对此不熟悉,建议先百度词条温习一下。虽然在WPF中可以使用TranslateTransform、RotateTrans...
阅读全文
摘要:一、不写代码的方法:用Blend看图说话:这是待处理的图片win7在win7上,画一个矩形,再用钢笔随便画个封闭的path将矩形与path合并组成复杂的路径将合成后的复杂路径与win7图片同时选中,然后生成剪切路径这样我们就得到了一个不规则的图片轮廓(当然这里演示的去掉不规则部分,反过来就是挖洞)二、用代码挖洞原理:先用WriteableBitmap把原图片复制一份,然后将原图隐藏,接下来把指定区...
阅读全文
摘要:先上演示地址:http://images.24city.com/jimmy/QQCapture/注:首次点击,会提示未安装ActiveX插件,下载安装成功后,刷新页面,就可以截屏了。提示:该ActiveX插件是我用Delphi7开发的纯绿色插件(调用了QQ公司的公开dll),默认会安装到c:\Capture下,大伙儿玩腻了以后,点击c:\capture\uninstall.bat,然后删除整个c:...
阅读全文
摘要:上一篇"base64编码在silverlight中的使用"里已经提到WriteableBitmap对象可以借助FluxJpeg转化为base64字符串,而WriteableBitmap又能从BitmapSource直接构造,so ... 问题解决了先将BitmapImage转化为WriteableBitmap,然后得到base64字符串,然后可以得到base64的byte[]数组,再然后您可以把b...
阅读全文
摘要:在传统的.net应用中,使用base64编码字符串是一件很轻松的事情,比如下面这段代码演示了如何将本地文件转化为base64字符串,并且将base64字符串又还原为图片文件.base64编码在传统.net程序中的应用(by 菩提树下的杨过 http://yjmyzz.cnblogs.com/) Code highlighting produced by Actipro CodeHighlighte...
阅读全文
摘要:这种应用现在已经比较常见了,比如论坛回贴中的手写功能 ,IM聊天中的个性化手写文字,个性签名等,在Silverlight中要实现该功能其实非常简单,只要一个InkPresenter控件即可使用要点:1.要合理设置裁剪区,否则手写时可能笔划会写到你不希望出现的地方.2.处理好MouseLeftButtonDown,MouseMove,LostMouseCapture这三个事件.演示代码:前端Xaml...
阅读全文