Creación dinámica de controles siguiendo el patrón MVVM
Me gustaría generar dinámicamente algunos controles en mi aplicación Silverlight.
ara ser más claro, aquí hay una definición simplificada de mi clase:
public class TestClass
{
[Display(Name="First Name")]
public string FirstName { get; set; }
[Display(Name = "Last Name")]
public string LastName { get; set; }
public List<CustomProperty> CustomProperties { get; set; }
}
Cada "CustomProperty" finalmente será TextBox, CheckBox o ComboBox:
public class CustomProperty
{
public CustomDataType DataType { get; set; } //enum:integer, string, datetime, etc
public object Value { get; set; }
public string DisplayName { get; set; }
public string Mappings { get; set; } // Simulating enums' behavior.
}
¿Cuál es la mejor manera de implementar esto usando el patrón MVVM? Si analizo CustomProperties en ViewModel y descubro qué controles deben crearse, ¿cómo puedo crear nuevos controles en mi vista según el patrón MVVM?
Existe algún control de Silverlight que pueda ayudarme a acelerar la IU?
¿Puedo definir anotaciones de datos mediante programación? por ejemplo, después de analizar la propiedad personalizada, ¿puedo agregar algunas anotaciones de datos (Pantalla, Validación) a la propiedad y vincularla a un DataForm, PropertyGrid o un control útil para esta situación?
Gracias