随笔分类 -  07.WPF/Silverlight

摘要:Xaml如下:代码 Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--<UserControlx:Class="ToolsTest.Test"xmlns="http://schemas.microsoft.com/winfx/2006/xaml/p... 阅读全文
posted @ 2010-01-03 14:03 菩提树下的杨过 阅读(3284) 评论(2) 推荐(2) 编辑
摘要:Silverlight中只有可视化树,没有WPF中的逻辑树,这一点可从SL的sdk文档中得到印证:可视化树概念也存在于 WPF 中,它与 Silverlight 的可视化树概念类似。然而,一个显著的差异是 WPF 还提供一个附加的筛选器或对象树(称为"逻辑树")的概念。逻辑树概念与某些属性系统行为相关。Silverlight 不通过帮助器类来公开此逻辑树。Silverlight 中的确存在某些(但... 阅读全文
posted @ 2010-01-02 21:31 菩提树下的杨过 阅读(6445) 评论(2) 推荐(2) 编辑
摘要:2009年最后一天,分享一个不错的Silverlight开源自定义布局:CollectionFlow,原作者博客:http://mentas.spaces.live.com/Blog/cns!A8D899E9B03A6E15!784.entry上面还有源代码下载效果图:简单分析下原理:先将所有元素堆叠在布局横向中心点,然后找到当前显示的元素,将其作为分界点,将其它元素分成左右二堆,依次移动变化为了... 阅读全文
posted @ 2009-12-31 14:02 菩提树下的杨过 阅读(1658) 评论(5) 推荐(1) 编辑
摘要:Silverlight是基于时间线的,不象Flash是基于帧的,所以在Silverlight中,很少看到有文档专门介绍SL中的帧。但是我们从动画原理知道,动画只不过是一幅幅静态图片连续播放,利用人眼的视觉暂留形成的,因此任何动画从原理上讲,至少还是有每秒播放多少帧这个概念的。Silverlight的sdk文档中,有一段话:...maxFramerate 值可通过 Silverlight 插件对象的... 阅读全文
posted @ 2009-12-25 17:19 菩提树下的杨过 阅读(946) 评论(0) 推荐(0) 编辑
摘要:效果:其实原理很简单:1.先把最外层布局的Cursor设置为None,即隐藏系统默认的光标2.然后在最外层布局的鼠标移动(MouseMove)事件里,弄一个对象鼠标跟随即可源代码下载:http://files.cnblogs.com/yjmyzz/MyCursor.rar 阅读全文
posted @ 2009-12-25 15:14 菩提树下的杨过 阅读(1246) 评论(3) 推荐(0) 编辑
摘要:先看效果:wrapPanel的效果在固定宽度的情况下看不出来,可查看在线演示地址:http://images.24city.com/jimmy/CustomPanel/这些布局,有些是从wpf上移植过来的,有些是自己写的,有些是网上搜集的,也许以后有用,先贴在这里介绍:FishEyePanel:从老外写的wpf版"鱼眼"效果移植过来的,Mac机上的工具条所说就是这种风格CellPanel:将布局等... 阅读全文
posted @ 2009-12-25 12:39 菩提树下的杨过 阅读(2247) 评论(2) 推荐(2) 编辑
摘要:很多时候,blend在制作动画时,会自动为对象生成如下代码:[代码]如果想在cs代码中动态控制,就得先知道如何引用它们,在不借助x:Name的情况下,可以这么做:[代码]上面的代码,将生成一段动画:1秒钟内将矩形旋转135度 阅读全文
posted @ 2009-12-24 17:05 菩提树下的杨过 阅读(750) 评论(0) 推荐(0) 编辑
摘要:虽然Silverlight提供了几种基本的布局方式,比如Canvas,Grid,StackPanel,Border...,但有时候可能仍然会觉得不够用。这时候我们可以通过继承Panel,并重写MeasureOverride 和ArrangeOverride 方法,以实现自己的布局,事实上Canvas,Grid,StackPanel就是继承自Panel,并自行实现这二个方法实现的。布局过程中,有二个... 阅读全文
posted @ 2009-12-24 10:09 菩提树下的杨过 阅读(2573) 评论(6) 推荐(2) 编辑
摘要:原文出处:国双科技-黄勇坚 Silverlight布局管理1. 布局管理介绍复杂的页面、软件界面都是由若干个界面部件组成的。每个部件占据着屏幕的一个部分。如何将这些部件有机地放在用户界面中,并且适合种尺寸大小的显示,成为界面设计者的一大难题。在界面的大小改变时,界面中的控件的位置和大小均会发生变化,如有的控件自动产生滚动条,有些控件之间的距离变小或者变大,有的控件的宽度和高度变小,有的控件大小不变... 阅读全文
posted @ 2009-12-23 17:03 菩提树下的杨过 阅读(2207) 评论(4) 推荐(0) 编辑
摘要:学习SL/WPF,Dependency Properties(依赖属性)是一个全新(陌生)但又无法回避的概念。http://www.wpftutorial.net/DependencyProperties.html这里有一篇通俗易懂的相关文章,不过是E文的,E文不好的朋友,也可以参考下面的内容:1.为什么会出现依赖属性?先回想一下传统的属性(Property):通常我们读取或赋值一个属性时,实际上... 阅读全文
posted @ 2009-12-23 13:53 菩提树下的杨过 阅读(1592) 评论(2) 推荐(0) 编辑
摘要:关键点:1.利用WebClient的DownloadProgressChanged事件更新下载进度2.下载完成后,分析Xap包的程序集Assembly信息3.利用Assembly反射还原对象并加载到当前页中。好处:1.可以先定义一个简单的加载动画,吸引用户注意,避免长时间的无聊等待,改善用户体验。2.实现按需加载,避免一次性下载过多内容。3.在一定程度上,增加了破解难度,有助于代码保密。Xaml ... 阅读全文
posted @ 2009-12-22 17:28 菩提树下的杨过 阅读(3423) 评论(11) 推荐(0) 编辑
摘要:这仅仅只是一个思路的问题,silverlight没办法直接调用activex,但是silverlight可以跟js很好互动,而activeX又能跟js交互,so...把javascript当作桥梁,就能把silverlight与activeX联系起来了,即:js调用activex --> silverlight调用js 阅读全文
posted @ 2009-12-22 13:26 菩提树下的杨过 阅读(3160) 评论(3) 推荐(0) 编辑
摘要:一直觉得SL中的wcf双工通讯方式有点鸡肋,如果是以http方式实现则效率太低,如果用SL4中的tcp方式实现,又跟socket太雷同,所以一直没去研究,不过这东西在对性能要求不高时(比如在网页上每5分钟更新一次天气预报/股票信息),实现起来还是蛮方便的.wcf双工通讯与传统的wcf相比,最大的区别就是:传统的wcf通常都是客户端去调服务,即客户端从服务端上“拉”信息,而双... 阅读全文
posted @ 2009-12-22 11:30 菩提树下的杨过 阅读(1560) 评论(0) 推荐(0) 编辑
摘要:1.sl调用js比如我们在页面中定义一个js函数:<script type="text/javascript"> function fnTest(msg) { alert('fnTest:' + msg); } </script>sl中可以有二种调用方式:HtmlPage.Window.CreateInstance("fnTest", "CreateInstance");或... 阅读全文
posted @ 2009-12-18 09:23 菩提树下的杨过 阅读(11868) 评论(6) 推荐(5) 编辑
只有注册用户登录后才能阅读该文。
posted @ 2009-12-14 14:26 菩提树下的杨过 阅读(3410) 评论(39) 推荐(5) 编辑
摘要:这种应用场景其实很多,比如游戏中装备/魔法的选择菜单,这里借用了"深蓝色右手"的一张图再比如聊天室中的文本颜色设置虽然sl的ToolTipService.ToolTip属性可以设置任何对象,比如下面这样代码 Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-... 阅读全文
posted @ 2009-12-12 21:21 菩提树下的杨过 阅读(3242) 评论(2) 推荐(1) 编辑
摘要:今天在蓝色上看到一篇介绍WritableBitmapEx的贴子(是开源项目),项目地址:http://writeablebitmapex.codeplex.com/对SL的WritableBitmap做了一些扩展,可以方便的绘制一些基本几何形状,示例代码如下:代码Code highlighting produced by Actipro CodeHighlighter (freeware)http... 阅读全文
posted @ 2009-12-08 14:13 菩提树下的杨过 阅读(1822) 评论(3) 推荐(1) 编辑
摘要:ListBox是一个很有用的控件,其功能直逼Asp.Net中的Repeater,它能实现自定义数据项模板,纵向/横向排列Item(如果扩展一下实现自行折行,几乎就是SL版的Repeater了--实际上WrapPanel已经实现了,不过没有默认集成在SL3中).这里推荐一个老外的文章 http://blogs.msdn.com/delay/archive/2008/03/05/lb-sv-faq-e... 阅读全文
posted @ 2009-12-08 12:55 菩提树下的杨过 阅读(3363) 评论(9) 推荐(1) 编辑
摘要:先来看xaml部分代码 Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--<UserControlxmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"xmlns:x="h... 阅读全文
posted @ 2009-12-08 09:57 菩提树下的杨过 阅读(1021) 评论(0) 推荐(0) 编辑
摘要:先上演示地址:http://images.24city.com/jimmy/DeepZoom/步骤:1.先启动PhotoShop,利用自动等分切片功能把图片等分成若干小图片,并导出,参考下图:2.启动Deep Zoom Composera.新建项目,并用Add Image...导入刚才等分好的小图片b.切换到compose面板,把小图片拖出来,并调整位置最终拼成完整的图片c.切换到Export面板... 阅读全文
posted @ 2009-12-07 12:36 菩提树下的杨过 阅读(1474) 评论(4) 推荐(0) 编辑