【发布时间】:2017-01-31 09:10:35
【问题描述】:
我有一个看起来像的 ViewModel
public class MyViewModel
{
public ObservableCollection<UserDefinedFieldBase> CustomFields { get; }
}
public class UserDefinedFieldBase
{
public Point CustomLocation { ... }
}
public class CustomTextField : UserDefinedFieldBase
{
public string Text { ... }
}
因此,每种可能的字段类型都有自己的类型并包含位置(可由用户自定义,因此它是 viewModel 的一部分,而不是视图。
问题部分: 实施控制的最佳方法是什么?我想过
- 要么创建一个具有 ObservableCollection
类型的 DependencyProperty 的 UserControl,并为派生类使用带有 TemplateSelector 的适当容器 - 无需通过自定义 DependencyProperty 即可工作/实现 ItemsControl 和 ItemsSource
【问题讨论】: