继承控件与创建新的控件模板

3
我正在创建一个WPF应用程序(也是基于MVVM的),在决定是继承和创建自定义控件还是为该控件创建新样式模板时,我应该考虑什么?
我应该注意到,所有修改后的控件都应该作为单独的程序集交给其他开发人员使用。
例如-水印文本框:您可以创建自定义控件或创建新样式(请注意两者来自同一博客...)。
有没有“经验法则”可以帮助决定使用哪种方式?
1个回答

1
通常情况下,您需要继承以添加功能并更改模板以更改外观。因此,如果它比原始控件执行更多操作,则可以使用子类。 (当然,您也可以通过模板在某种程度上扩展功能,但这有点离题。)

那么,你会如何对水印文本框进行分类呢? - Blachshma
@Blachshma:这基本上只是外观,所以我不认为需要新的控件。但是,如果水印是动态的,您可以考虑它作为功能(例如添加消息属性)。 - H.B.

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接