Silverlight开发的一些最佳实践分享

原创
开发 后端
在XAML文件中不要使用无用的xmlns命名空间,这样会导致Silverlight页面加载时间过长。不要在单个XAML页面中增加多个相同的命名空间,这样会破坏XAML代码的可维护性,运行时多次加载相同名称的命名空间可能会引起各种内存问题。

我从2008年3月开始使用WPF/Silverlight开发,这几年来我学到了很多东西,我打算分享一些WPF/Silverlight开发***实践,希望这些技巧在你编辑XAML代码时能有所帮助。

在XAML文件中不要使用无用的xmlns命名空间,这样会导致Silverlight页面加载时间过长。不要在单个XAML页面中增加多个相同的命名空间,这样会破坏XAML代码的可维护性,运行时多次加载相同名称的命名空间可能会引起各种内存问题。

为xmlns命名空间前缀使用合适的名字,例如,xmlns:commonControls就比xmlns:cctrl更有意义,这样可以避免将来命名空间的多次声明。Xmlns命名空间的前缀中尽量避免使用local,***用localControls或localConverters代替,在相同的程序集中可能有两个或多个命名空间(如Controls或Converters等),在这种情况下,使用合适的前缀名将有助于正确区别它们。

当增加一个无元素的控件时,***使用自闭合标签“/>”关闭,不要使用硬关闭标签“</tag>”,这样XAML代码看起来会更清爽。如果资源没有被使用,***移除这些不必要的资源键,它们会消耗更多的内存,你可能会因此遇到很多恼人的问题,如果你后面会使用到它们,你可以随时来添加它们。

不要使用额外的面板(如Grid,StackPanel,Canvas等)。如果你需要使用其它面板,首先应该尝试Grid,Grid拥有灵活的UI布局,对调整应用程序大小很有用。不要企图给Silverlight页面中的所有控件起一个名字,因为在加载时会创建一些不必要的对象,只需要为那些后面将会用到的控件起一个名字即可,如果你在使用MVVM模式,你可以移除几乎所有控件的名字。

使用控件的Visibility属性代替Opacity属性隐藏内容,Opacity属性值设为0虽然可以起到隐藏作用,但内存占用和UI空间占用是不会减少的,相反,Visibility属性会释放内存和UI空间,因此可以将有限的空间放置其它控件。在XAML代码中使用正确的格式,这样会使代码更好看,也更易于维护。

尽可能为XAML增加注释,当过了很久你再查看这些代码时,你才能想起当初这样写的动机,此外,如果是多人协作,合理的注释会减少其他人员的代码阅读和理解时间,促进协作生产力的提高。使用StaticResource代替DynamicResource,首先它会提升性能,其次在开发时可以跑出异常信息,有利于调试。

移除不需要的样式。如果你想跨应用程序共享你的样式,***在单独的文件中添加你的样式,如果只针对某个特殊的页面,***在页面资源文件中添加它们。

责任编辑:马沛 来源: 51CTO.com
相关推荐

2022-05-19 07:52:39

MLOps云计算实机器学习

2010-10-28 09:05:42

SilverlightXAML

2017-05-02 21:08:35

开发架构工程师

2011-06-16 16:39:14

CSS

2023-10-07 16:20:34

JavaAPI

2011-06-10 20:02:55

嵌入式开发

2014-07-31 09:33:05

开发者独立开发者

2011-06-10 20:30:35

2015-12-04 10:04:53

2021-04-09 10:26:43

Python编程技术

2017-09-20 15:07:32

数据库SQL注入技巧分享

2009-12-31 10:15:12

Silverlight

2022-08-02 09:55:04

React前端

2011-04-06 09:33:40

Push动互联网

2021-06-08 06:13:16

React开发开发技术

2011-07-03 19:07:47

关键词

2011-06-15 18:42:28

友情链接

2015-08-17 15:53:58

Linux桌面

2021-10-31 07:36:17

前端JavaScript编程

2009-07-09 13:16:54

Java Swing开
点赞
收藏

51CTO技术栈公众号