概述前几天做了一个WPF的项目,代码是从silverlight中拷出来的,但是运行时出现了很多错误,原因在于silverlight和WPF之间有很多
区别之处,在此总结一下 1.在后台根据前台xaml文件的x:Name 来获得控件 silverlight中: Panel panle = this.LayoutRoot.FindName(account.Parent.Attribute("
前几天做了一个WPF的项目,代码是从silverlight中拷出来的,但是运行时出现了很多错误,原因在于silverlight和WPF之间有很多区别之处,在此总结一下
1.在后台根据前台xaml文件的x:name 来获得控件
silverlight中:
Panel panle = this.LayoutRoot.Findname(account.Parent.Attribute("ID").Value) as StackPanel;
WPF中:
Panel panle = LogicalTreeHelper.FindLogicalNode(this.LayoutRoot,account.Parent.Attribute("ID").Value) as Panel;
2.动画Storyboard 和依赖属性 DependencyProperty 有锁定的问题
在silverlight 没有锁定问题,可以在storyboar_Complate 中可以对DependencyProperty 属性进行赋值
在WPF中,则两者有锁定问题,在storyboar_Complate 中必须对Storyboard 置空,然后才能对DependencyProperty属性进行赋值,否则无法赋值成功
解锁属性 的相关代码为: brdRoot.BeginAnimation(FrameworkElement.HeightProperty,null);
在这就是简单的总结一下,但是原理性很强,为了这个问题浪费了很长的时间,并且请教了高手帮助,这对我以后的代码编程道路提供了很大的帮助,呵呵~~~
总结
以上是内存溢出为你收集整理的silverlight 和 WPF 中的Storyboard和DependencyProperty的区别全部内容,希望文章能够帮你解决silverlight 和 WPF 中的Storyboard和DependencyProperty的区别所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
评论列表(0条)