08 2011 档案

摘要:在这篇文章里我将介绍去年我写的一个Silverlight多值绑定的升级版,这个升级版包括Silverlight4,附加属性和多值绑定到一个对象上。多值绑定在WPF中允许绑定多个数据源到单个属性上,此时的绑定要结合数值转换器。但是这一个特性在silverlight中不被支持。一年前,我写了一个关于在silverlight中解决Multibinding的解决方案,它受到了很大的反响。甚至来自微软的Attorney发了一封邮件给我,说能不能把我写的解决方案用到SilverlightFacebook客户端上去(多么酷的一件事)。当听到StefanOlson弄了一个升级版使它能够在SL4中使用我很高兴。 阅读全文
posted @ 2011-08-31 23:13 huangliangjie 阅读(245) 评论(0) 推荐(0)
摘要:这里包括了一些示例,其中有silverlight和XNA的程序,但可以应用到Windows Phone上。Accelerometer; Simulating accelerometer data in the Windows Phone 7 Emulatorhttp://blogs.silverarcade.com/silverlight-games-101/27/silverlight-simulating-accelerometer-data-in-the-windows-phone-7-emulator/Animation; Ptorr Slides, Video and Code (P 阅读全文
posted @ 2011-08-30 22:36 huangliangjie 阅读(172) 评论(0) 推荐(0)
摘要:在开发WP7程序过程中,会遇到在UI上使用用大量的Image这种情况。你可能会以为使用Image是一个很简单的事情,不需要用一篇博客的篇幅的介绍:仅仅设置一个Uri给Image的Source属性就完成了?但是,还有其他的事情需要考虑呢。这里有许多的小细节如果你知道到的话,会对的你的程序有帮助,特别是当希望开发出的软件能够有较好的体验和较少的内存使用(移动开发这点很重要)。这些小的提示,不仅适用WP7手机开发,同样也适用SilverLight桌面程序。但是在手机开发中,把握住那些能够把一个好的程序变成一个优秀的程序性能细节是非常重要的技能。为了指出这一点,这里举出一个实现了这些小细节的示例。JP 阅读全文
posted @ 2011-08-30 22:31 huangliangjie 阅读(139) 评论(0) 推荐(0)
摘要:本文对继承子类与扩展方法进行了一番比较,比较案例是对ObservableCollection进行排序.经过比较,作者认为继承和扩展方法两者实在是难分伯仲。前段时间,我做的一个项目有一个小小的需求,即:对范型集合类型ObservableCollection<T>进行排序。ObservableCollection<T>这个类型在WPF和Silverlight中非常有用,因为它实现了INotifyCollectionChanged接口,继而在进行数据绑定的时候,如果将ItemsControl的ItemsSource属性绑定到一个ObservableCollection< 阅读全文
posted @ 2011-08-21 19:39 huangliangjie 阅读(389) 评论(0) 推荐(0)
摘要:在这篇文章中,我将要介绍在Windows Phone 7开发环境中怎么去创建一个DataTemplateSelector的虚类和自定义一个CustomDataTemplateSelector。通常DataTemplateSelector提供一种基于数据对象和数据绑定的选择DataTemplate的途径。特别是在对于同类的对象有多个DataTemplate,并且能根据逻辑选择DataTemplate应用到数据对象上。简单的说,DataTemplateSelector允许我们编写一些逻辑去选择哪个DataTemplate运用到哪个特定的项上。甚至可以创建一个新的Template 。NOTE: Da 阅读全文
posted @ 2011-08-20 12:36 huangliangjie 阅读(175) 评论(0) 推荐(0)
摘要:于在过去的N年中,遇到了很多使用囧然不同风格的开发者,下面是我所知道的一些,你还知道其它的吗? 散弹枪编程 这种编程风格是一种开发者使用非常随意的方式对待代码。“嗯,这个方法调用出错了……那么我会试着把传出的参数从 false 变成 true!”,当然依然出错,于是我们的程序员会这样:“好吧,那我就注释掉整个方法吧”,或是其它更为随意的处理方式,直到最后让这个调用成功。或是被旁边的某个程序员指出一个正确的方法。 如果我们把一个正规的程序员和一个撞大运的程序员放在一起做程序,那么,那个正规的程序可以马上变得发疯起来,并且,可以把正规的程序员的智商降到最低。两个撞大运的程序员不应该在... 阅读全文
posted @ 2011-08-17 22:37 huangliangjie 阅读(172) 评论(0) 推荐(0)
摘要:今天在编写一个控件的样式的时候,碰到了如下的异常: ColorAnimation cannot be used to animate property Background due to incompatible type.这里是报异常处的XAML代码, <ColorAnimation Storyboard.TargetName="border" Storyboard.TargetProperty="Background" Duration="0" To="#FF6B6B6B"> <ColorAn 阅读全文
posted @ 2011-08-11 22:22 huangliangjie 阅读(444) 评论(0) 推荐(0)
摘要:在WPF , silverlight ,WP7中经常会用到List<T>和ObservableCollection<T>。这里简单讲一下他们之间的相互转换。List<T>List<T>代表的是强类型的Ojbect集合,可以通过索引访问并且提供了查找、排序以及操作此集合的方法。List基本上和ArrayList相同,它用数组的方式实现了接口IList并且他的大小可以根据需要来自动增加。List<T>的缺点:在使用ASP.NET开发时,我们简单的使用DataSource和DataBind来绑定数据,但是在SilverLight中就没有那么 阅读全文
posted @ 2011-08-10 23:13 huangliangjie 阅读(300) 评论(0) 推荐(0)
摘要:Justin James曾发表过一篇博文《10 tips for advancing from a beginner to an intermediate developer》,为我们分享如何才能完成程序员从初级到中级的蜕变,现将中文译文转载于此,供大家借鉴。 在一封与TechRepublic会员交流的邮件当中,他提到了面向程序员的博客、文章及杂志分成两类:面向初学者类(“hello world”这种类型的教程)以及面向专家类(MSDN杂志)。这个观点很好,有关程序员如何从初级跃升到中级的信息极少。以下是为了实现这种转变需要你去做的10件事。1.学习另一门语言 其实你学的是哪一门语言并没有关系 阅读全文
posted @ 2011-08-01 20:03 huangliangjie 阅读(119) 评论(0) 推荐(0)
摘要:正如我在上一篇博客中提到的(现在可以明确地告诉大家),我已经离开Google了。虽然我已经收到了很多不错的offer,但是还没有决定去哪里。在这段时间里从技术角度上说我不受雇于任何人,虽然也许这会让我和(前)同事或者老板关系有点紧张,但我觉得应该写一些关于技术上的有趣的事情。 Google确实是一家很酷的公司。不论是在公司内部或是外部,Google都做了很多让人赞叹的的事情。这里我想介绍一些不涉及商业机密,但鲜为外人所知的事情。 Google的代码之所以优秀原因其实很简单:他们非常重视代码审查。代码审查并不是Google独有的,它被公认为是一个很好的(提高代码质量的)手段,很多人已经在日... 阅读全文
posted @ 2011-08-01 19:55 huangliangjie 阅读(162) 评论(0) 推荐(0)