2010-06-10 78 views
4

WPF开发人员可以避免哪些常见错误?WPF开发人员要避免的常见编程错误?

+0

不要使用XAML或专门想着WPF,当你的意思是错误? – 2010-06-10 08:25:49

+2

你是否寻求信息或声誉? ;-) – AndreasT 2010-06-10 08:27:48

+1

可能的重复[在WPF开发中最常犯的错误是什么?](http://stackoverflow.com/questions/322612/what-are-the-most-common-mistakes-made-in-wpf -development) – luvieere 2010-06-10 09:03:51

回答

3

对待它像Windows窗体..不要做.. WPF!=的WinForms ..

+5

令人遗憾的是,大多数WPF书籍甚至没有写关于WPF使用的MVVM模式。他们都写他们的样本,他们是Winforms ... – KroaX 2010-06-10 08:33:39

+0

这确实是令人伤心的.. – Arcturus 2010-06-10 08:36:04

4

我觉得一个很大的错误是忽视,应该由优秀的开发人员

中使用的MV-VM模式
1

在工程...只是因为它可能是一个复杂的结合做并不意味着你可以保持它...

编辑:而在做事情XAML应该做过的工作。

+3

和做代码,应该在XAML – TalkingCode 2010-06-10 09:17:32

0
  • 对待它像Windows窗体或ASP.NET
  • 忽略MVVM模式
  • 过度使用的MVVM模式
  • 的缘故MVVM模式对待它像Silverlight
  • 忽略XAML coding guidelines - >导致无法维护的XAML。
  • 忽略绑定错误在Visual Studio输出
  • 在Visual Studio忽略设计(即WPF应用程序可混合性)
2

把代码(验证,胁迫逻辑,改变通知,日志记录等)在getter和setter依赖属性的相应CLR属性,而不是使用PropertyChangedCallback,ValidateValueCallbackCoerceValueCallback

正常的.NET代码可以通过它们获取或设置属性值,但WPF通过直接进入后备存储获取并设置这些值。

的CLR包装应该这样看起来就像这样:

public int Prop 
{ 
    get 
    { 
    /*NOTHING IN HERE*/ 

    return (int)GetValue(ThingyProperty); 
    } 

    set 
    { 
    /*NOTHING IN HERE*/ 

    SetValue(ThingyProperty, value); 

    /*NOTHING IN HERE*/ 
    } 
}