用户控件与自定义控件库的区别

Rod*_*Rod 18 c# wpf

我正在使用C#2008在WPF中创建日期/时间用户控件.我的第一个用户控件.我也在使用Matthew MacDonald的书"C#2008中的Pro WPF".在那本书中,他强烈建议使用WPF自定义控件库项目模板创建用户控件; 所以我听从了他的建议.我已经完成了编写代码,这些代码将被我认为是代码隐藏文件.现在我准备写XAML了.

唯一的问题是,我刚发现没有相应的.xaml文件?所以,我不明白为什么在编写用户控件时使用WPF自定义控件库项目更好,或者更喜欢?

Ree*_*sey 29

用户控件和自定义控件解决了两个截然不同的问题.

UserControls旨在将多个WPF控件组合在一起,以便创建一组由其他控件构建的功能.这通常用于组成窗口或屏幕的一部分,以便通过允许您将多个功能组合成一个"控件"来组织开发.例如,如果您想创建一个控件来编辑提供名字,姓氏,年龄等文本框的用户,可以将单个UserControl拖放到Window上并绑定到User实例进行编辑.(在这种情况下,您使用标准控件(如TextBox)来"组合"控件以实现更复杂的目的.)

但是,CustomControl是一个新的单一控件.这通常是内置控件的替代品(无法通过模板重做).我发现在WPF中对CustomControls的需求实际上相当少,因为WPF模板选项和附加属性允许你在完全学习它们之后用标准控件做几乎任何事情.

  • 这不回答这个问题.问题是自定义控件和用户控件**库**之间的区别是什么.我可以接受这个答案,并推断出我应该使用哪一个,但它仍然没有告诉我两个项目模板是如何不同的. (3认同)