代码改变世界

SilverLight4常见问题及解决办法

2010-07-23 11:49  铁骑(PuLee)  阅读(2476)  评论(2编辑  收藏  举报

最近在学习SilverLight中遇到的一些问题,有些很复杂,有些很低级,但都是绞尽脑汁查尽资料才解决的,分享出来,希望对大家有所帮助。

问题1:silverLight项目下的images文件夹中的图片无法被引用。
解决办法:
方法1.将 images文件夹移动到ClientBin文件夹中。
方法2.或者在引用地址中使用如下格式:
/Sample;component/Images/BluHills.jpg”
说明: Sample为项目的命名空间,Images为存放图片的文件夹,BluHills.jpg为文件夹中的一张图片。
问题2:出现The breakpoint will not currently be hit. No symbols have been loaded for this document” 错误。断点直接跳过,不能进行调试。
解决方案:
网上找到的一些
第一种:
1.删除站点bin目录下所有pdb文件,
2.选择vs的 Tools->options->Debugging->Symbols,将你的编译目录添加进去。
3.选择vs的Tools. Options,Debug, General,And uncheck: “Enable Just My Code.”
4.如果这些dll处于版本控制之下,建议取消控制。
第二种:
从菜单栏的 Tools->Options->Debugging->General
取消  “Require source to exactly match…” 项的选择。
还有两个可能是
1.  打开项目属性,选择调试选项卡,将“启用非托管代码调试”一项钩上。
2. 由于Terminal Services 这个服务被禁用了,将这个服务设为自动,将这个服务启动。
对于单个断点,可以右键—>location—>勾选“allow source code to be defferent”
但是以上两种对我均无效!
最后发现,原来是Chrome和VS2010的调试器配合有问题,换成IE8则调试一切正常。

问题3:出现Unhandled Error in Silverlight Application Code: 2103错误。
分析原因:之前修改了命名空间,但是未改彻底,项目属性中应用程序启动对象(application startup object)设置的还是原来的命名空间。
解决办法:删除ClientBin中的.xap文件,重新生成,命名空间就会更新,如果未自动更新,请手动更新。

问题4:DataGrid不能直接绑定数据集(比如List)的问题。
解决办法:原来是因为DataGrid控件中添加了 AutoGenerateColumns=”False” 这个属性,去掉或者将属性值改为True即可。

问题5:英文版的silverlight中控件使用中文字体样式会很难看。
解决办法:
Silverlight中对中文字符的支持有些问题,需要手动指定FontFamily属性的值为中文字体,并且属性值中的字体名称要用英文表示,比如宋体要写为simsun。

常见中文字体与FontFamily映射表
宋体(英文不等宽) Simsun
宋体(英文等宽) NSimsun
楷体 KaiTi
黑体 SimHei
仿宋 FangSong
微软正黑体 Microsoft JhengHei
细明体 MingLiu
微软雅黑 Microsoft YaHei

我的个人博客:铁骑世界,欢迎光临