2012-08-29 48 views
3

我正在创建一个WPF应用程序(也是基于MVVM的),当决定是否继承并创建一个自定义控件vs创建一个新的样式模板时,我应该考虑什么控制。从控件继承vs创建新的控件模板

我应该注意到,我所有修改过的控件应该稍后由其他开发人员使用,他们将作为单独的程序集接收它们。

例如 - 水印文本框:您可以创建一个Custom Control或创建一个new style(注意两者都来自同一个博客...)。

是否有任何“经验法则”来帮助决定一种方式与另一种方式?

回答

1

通常您会继承添加功能并更改模板以更改外观。所以如果它比原来的控制做得更多,我会使用一个子类。 (当然你也可以在某种程度上通过模板来扩展功能,但这有点不尽如人意。)

+0

那么如何分类水印文本框呢? – Blachshma

+0

@Blachshma:这只是外观,所以我没有看到任何新的控制需求。但是,如果水印是动态的,你可以考虑它的功能(例如为消息添加一个属性)。 –