我在WPF中创建自定义控件,它是我从Control类型派生的股票代码的高度非原创示例。我的问题是:控件本身是否有任何推荐的设计模式(与应用程序相对)?我在整个应用程序中使用MVVM,但是如果使用控件本身的这种设计模式是好的或坏的做法就会徘徊。
我考虑使用MVVM进行控制的原因是:
任何关于此事的想法都会很棒。我只是不知道这是不是好习惯。
非常感谢
答案 0 :(得分:2)
1)未来可扩展性 - 我想说的是控制开发的核心。
2)良好的API设计 - 创建与概念证明一样多。
3)出现模式 - 如果真的是大控制。与MVVM一起使用是件好事。但是,也要学会妥协。有时候,我们会觉得组件开发时严格遵守MVVM会使控件变得非常复杂
4)避免过度暴露属性 - 在需要时添加属性。 [如果房产过度暴露,控制感觉就像滥用一样。 ;)]
5)使控件看起来像。请参阅L for Lookless
常规强>
尝试从开始使控件可混合。这将有助于您了解从开始有多好和可用。最重要的是,它提供了很多的满足感,并且易于跟踪控制的完整性。
在选择特定功能时,请从两个方面思考:
1)控制的可用性和
2)控制的完整性。
答案 1 :(得分:0)
如果控件本身是自包含的并且足够复杂而不能单独调用视图,那么我会像你建议的那样为控件本身创建一个单独的视图模型。否则,我只是让它存在于它托管的视图中。