前几天做了一个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);
在这就是简单的总结一下,但是原理性很强,为了这个问题浪费了很长的时间,并且请教了高手帮助,这对我以后的代码编程道路提供了很大的帮助,呵呵~~~
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。