12 2006 档案
摘要:继续相同的话题:WPF中的资源。这次我将尝试从另外一个角度来分析WPF中的资源:资源编译行为,以及如何根据应用程序的需要选择适当的类型。
阅读全文
摘要:在本系列的之十三中简单介绍了WPF中资源的资源。但是,没有给出任何具体的实例,在这个Post中将给出一个动态资源的例子,也算是响应daxian110的请求。并适当的扩展在前一个Post当中没有涉及的知识。
阅读全文
摘要:在上一个Post当中,我叙述了WPF中的数据绑定相关的一堆理论知识。现在,我们将对其中的某些方面通过实例做进一步的分析。在介绍WPF数据绑定源的种类时,第一种就是任意的CLR对象。这里需要注意的是WPF虽然支持任意的CLR对象,但是一个普通的CLR对象类却不行。我们还需要在CLR对象类上实现一种变化通知机制。WPF把这种通知机制封装在了INotifyPropertyChanged接口当中。我们的CLR对象类只要实现了这个接口,它就具有了通知客户的能力,通常是在属性改变后通知绑定的目标。
阅读全文
摘要:数据绑定,这是WPF提供的一个真正的优点。除了可以用在传统的绑定环境中,数据绑定已经被扩展应用到控件属性上。学习应用数据绑定,也能真正的体现XAML的好处。到底什么是数据绑定呢?也许你从字面上已经理解的很不错了。通过数据绑定,我们在应用程序UI和程序逻辑之间建立了一种联系。正常建立绑定后,在数据的值发生改变后,绑定到数据的元素将自动更新、体现出数据的变化。
阅读全文
摘要:资源是保存在可执行文件中的一种不可执行数据。通过资源我们可以包含图像、字符串等等几乎是任意类型的数据。如此重要的功能,.NET、WPF当然都支持,而且WPF的资源有所不同。今天,我将简单说明如何在WPF中使用资源。
阅读全文
摘要:在前面,我用三篇短小的Post对Dependency属性进行了说明。现在,我们再继续看一种特殊的Dependency属性:Attached属性。Attached属性可以非常高效地Attach到其他的对象中。
阅读全文
摘要:在前一个Post中,重点说明了Dependency属性的变化通知和属性值的继承两个方面,下面我们再看看Dependency属性所支持的多个提供对象。
阅读全文
摘要:在前一个Post中,曾提到将要重点研究的三个方面:变化通知;属性值的继承;支持多个提供对象。下面,我将分别就这三个内容进行简单地说明。在此Post中说明变化通知和属性值继承。支持多个提供对象将在下一篇Post讲述。
阅读全文
摘要:WPF引入了一种新的属性:Dependency属性。Dependency属性的应用贯串在整个WPF当中。Dependency属性根据多个提供对象来决定它的值。并且是及时更新的。提供对象可以是动画,不断地改变它的值。也可以是父元素,它的属性值被继承到子元素。毫无疑问,Dependency属性最大的特点就是内建的变化通知功能。提供Dependency属性功能主要是为了直接从声明标记提供丰富的功能。WPF声明的友好设计的关键是大量的使用属性。如果没有Dependency属性,我们将不得不编写大量的代码。关于WPF的Dependency属性,我们将重点研究如下三个方面:
1、变化通知功能:变属性的值被改变后,通知界面进行更新。
2、属性值的继承功能:子元素将继承父元素中对应属性名的值。
3、支持多个提供对象:我们可以通过多种方式来设置Dependency属性的值。
阅读全文
摘要:这部分的内容来自于即将出版的新书《WPF Unleashed》的第三章样章。简单说明WPF中逻辑树和视觉树概念的理解以及区别,如何遍历视觉树等。
阅读全文
摘要:前一个Post当中,我们简单介绍了XAML的向后兼容性,以及利用标记兼容性实现注释的功能。现在,我们接着讨论XAML的向前兼容性问题。
阅读全文
摘要:为了能更好的实现产品与Vista操作系统的移植、兼容、扩展等等。最近(或许一直)一段时间开始学习WPF的一些相关知识。根据目前的安排,至少还有1个月的时间。正好,可以每天记录一些问题或者所学的知识。也希望自己能坚持写下去。我们都相信时间的力量!大宝能天天见,WPF也可以天天写!
阅读全文
摘要:继续XAML的话题,在前一个Post当中简单介绍了XAML的类型转换器(TypeConverters)。这次介绍一些XAML标记兼容性(Markup Comptability)的相关内容。
阅读全文
摘要:Adam Nathan的又一本新书《Windows Presentation Foundation Unleashed》很快就要出版了。这本书600多页,比Charles Petzold先生的千页巨头《 Applications = Code + Markup》少很多啊!我相信这应该是一本WPF的好书。Adam Nathan也是《.NET and COM》一书的作者,这本书是Amazon的4.5星的图书,所以这本书应该也不错!而且,《Windows Presentation Foundation Unleashed》中关于3D的部分内容是Daniel Lehenbauer所写。WPF的3D部分本身就是由Daniel Lehenbauer领导实现的。我们有理由相信他能真正的揭密WPF内幕。
阅读全文
摘要:在前面关于XAML的Post当中,简单说明了XAML如果引入自定义名称空间。还提到过XAML基本上也是一种对象初始化语言。XAML编译器根据XAML创建对象然后设置对象的值。这里我们将讨论一些WPF中TypeConverter的使用问题.
阅读全文
摘要:说明:这里的Win32特指Vista操作系统之前的所有图形系统:GDI、GDI+、Direct3D。本Post将主要说明一些WPF与WIN32的关系,区别等等。
阅读全文
摘要:近日的学习中遇到一个非常奇怪的问题:用XAML文件创建了一个全屏幕窗口,然后,在窗口中建立了一个非常简单的动画。一切都在我的掌控之中,实现非常的顺利。最后程序的运行结果却出乎所料,在调用Storyboard.Begin之前,一切都很正常,但是一旦启动动画,程序运行就很慢,鼠标的运动很慢很慢。有兴趣的朋友可以自己尝试一下。
阅读全文
摘要:在前一篇文章中,指出xmlns的作用是设置XML文件的命名空间。类似的,xmlns:x的作用也是指定命名空间。这里为什么是x而不是其他的,我们可以简单的理解为其只是MS的一个命名而已,没有任何特殊的意义,当然,为了避免和它的冲突,我们定义自己的命名空间的时候不能是x。
阅读全文
摘要:在我开始看WPF文档开始的几天里,脑子里形成了一种错误的想法:WPF不就是XAML码?当时的感觉就是郁闷啦,我学习WPF还得弄这个东西。给人的第一感觉就是WPF很复杂。虽然对WPF的熟悉和了解还不是特别多,但现在已经知道这确实是一种错误的想法。
阅读全文
摘要:WPF进入我们的生活已经很多年。(写这句话让我想起来了“我不做大哥好多年”。) 个人认为在UI的实践中,用户需要的是易于操作的,更加绚丽的界面。这两个应该是最基本、也是最重要的宗旨。而对于开发人员就是要用最简单的方法开发出尽可能漂亮的界面,并且效率也不能太差。(要求是不是有些过分啦!)除了在一些Web开发和特殊的应用中,很少有开发组配备单独的美工,至少目前是这样吧!根据自己目前对WPF的了解程度,感觉WPF在其中某些方面确实有超强的震撼力。
阅读全文
摘要:在最近的实际开发中遇到下面一个3D场景有关问题,虽然问题得到解决,但是感觉还是有些不明朗。希望和WPF高手一起讨论交流这个问题。
阅读全文