En WinForms, podría agregar un atributo [Category] a una propiedad de control personalizada para especificar qué categoría de propiedad debe contener la propiedad. ¿Cómo hago eso en WPF? Gracias¿Establecer categoría de propiedad para el control personalizado de WPF?
Respuesta
He descubierto que no tiene para incluir una DLL en tiempo de diseño para agregar un atributo [Category] a una propiedad de control personalizada. Esa es una manera en que se puede hacer, pero de hecho, puede usar cualquier atributo .NET tal como lo hizo en WinForms. Por ejemplo:
/// <summary>
/// The image displayed by the button.
/// </summary>
/// <remarks>The image is specified in XAML as an absolute or relative path.</remarks>
[Description("The image displayed by the button."), Category("Common Properties")]
public ImageSource Image
{
get { return (ImageSource)GetValue(ImageProperty); }
set { SetValue(ImageProperty, value); }
}
Debe proporcionar un "conjunto de metadatos", también conocido como "DLL de tiempo de diseño". Este es un ensamblaje con el mismo nombre que su ensamblaje principal con .Design agregado (por ejemplo, MyCompany.MyControls.Design.dll) y contiene una clase que implementa IRegisterMetadata. La implementación IRegisterMetadata crea una tabla de atributos para los distintos componentes en su ensamblaje principal y la agrega a un MetadataStore.
Para obtener más información y ejemplos, consulte las publicaciones de blog de Jim Nakashima del equipo de Sidra here y here.
Para documentación, vea WPF Designer Extensibility en MSDN.
- 1. WPF Control personalizado: DependencyProperty de tipo Colección
- 2. wpf control personalizado no reconocido
- 3. UserControls WPF - Establecer la propiedad .Command en el botón de control de usuario en el interior
- 4. WPF estilo personalizado de control derivada
- 5. Forzar un control WPF personalizado para cambiar el tamaño correctamente
- 6. ¿Agregar propiedades al control WPF personalizado?
- 7. WPF Custom Control - ¿Cómo prueba un control personalizado?
- 8. WPF tutorial para crear un usuario de control personalizado
- 9. WPF: Establecer propiedad de enlace para ListBox-binding
- 10. Wpf plantilla de control personalizado - tamaño de fuente relativo
- 11. Usando un control WPF personalizado en WinForms
- 12. Cómo enlazar la propiedad local en el control de WPF
- 13. Valor predeterminado de propiedad de texto anulado de control personalizado
- 14. ¿Puedo usar XAML para establecer una propiedad anidada (propiedad del valor de una propiedad) de un control?
- 15. Vinculando propiedad de dependencia personalizada al estilo personalizado de WPF
- 16. Plantilla de control personalizado de WPF no aplicada
- 17. ¿Mostrar el icono personalizado para el control personalizado?
- 18. ¿Cómo establecer un valor inicial para una propiedad de control de usuario?
- 19. WPF - Vincular propiedad de imagen al control de imagen
- 20. Diferencia entre control de usuario y biblioteca de control personalizado
- 21. ¿Cómo establecer una propiedad Int de un control en ASCX?
- 22. WPF - Vincular visibilidad de control de usuario a una propiedad
- 23. Modificador de clase pública para control WPF
- 24. Establecer valor de propiedad de RadioButton
- 25. Establecer una propiedad PlacementTarget de WPF ContextMenu en XAML?
- 26. Animar la propiedad 'Estilo' de Control utilizando ObjectAnimationUsingKeyFrames en WPF
- 27. OnApplyTemplate de control personalizado llamado después de devolución de llamada propiedad de dependencia
- 28. Activador de la propiedad UserControl para el control secundario
- 29. WPF - Pase el valor de un control a un convertidor para establecer el ancho en otro control
- 30. WPF Custom Control TemplateBinding