部署发生错误发生原因:
部署时发生:
1)SL4 部署后运行时报错 缺少对象
问题所在的一种可能:没有设置相应的MIME类型
解决方法:添加以下几种MIME类型
1、.xaml
2、.xap
3、.xbap
==
开发的样式造成的问题如何调整。
1)对于Vs 2010来讲,如果Style中定义了错误的XAML样式,程序编译可能能够通过,但是解决中会出现JS错误,无法调试,JS也无法给出正确的信息。VS2010只能对XAML语句的格式进行调整,如果是(Silverlight 5就可以跟踪XAML语言了)
当然你可以下载Kaxaml工具等,但是那些只能解析XAML的格式。无法处理。
2)其实所有的样式定义,完全依赖于Blend,它能够自动抽取出样式并且定义成资源。
例如:
<Style x:Key="DisabledStyle" TargetType="Border">
<Setter Property="Background" Value="{StaticResource DisabledBrush}"/>
<Setter Property="BorderBrush" Value="{StaticResource DisabledBrush}"/>
<Setter Property="Opacity" Value="0"/>
<Setter Property="IsHitTestVisible" Value="False"/>
<Setter Property="CornerRadius" Value="2"/>
</Style>
<Style x:Key="FocusStyle" TargetType="Border">
<Setter Property="CornerRadius" Value="2"/>
<Setter Property="Opacity" Value="0"/>
<Setter Property="BorderBrush" Value="{StaticResource FocusBorderBrush}"/>
</Style>
<Style x:Key="BorderStyle" TargetType="Border">
<Setter Property="CornerRadius" Value="2"/>
</Style>
这些都是Blend自动生成,你应该使用Blend打开项目,Blend 4将自动检查打开界面绑定的Xaml资源,这个反而比调试工具更好,如果丢失了,你补充上就可以了。
Blend同样支持选择一个组件,编辑模板,使用Blend类似于DIV+CSS开发,你只要在Xaml放置好位置,其他的都可以交给Blend直接设计转换成资源,很容易的避免了xaml的问题,相对什么js调试,什么kaxaml好多了。
代码错误引发的XAML错误,建议使用Log的方法调试。
开发人员要习惯于界面和样式分离的思考,其他的可以交给美工解决(Blend的熟练才行,不是那么容易找的)
避免了有xaml引起的无法显示错误,或者js错误,还有可能页面突然啥都没有了的现象。
==
Silverlight也秉承者Div +css样式分离的设计思想理念,做银光多学习一下Blend和Visual Studio 2010的协作可以完美的做出用户体验。
Blend打开解决方案结果方案的目录木有了,结果,乱七八糟,不过你不管他,编译解决方案,全力做好CSS样式或者美工就行了。