Leí en algún lugar que la configuración DataContext = this
en el constructor de un control de usuario es una mala práctica (no puede encontrar dónde). ¿Por qué es esta mala práctica? ¿Cuál es la alternativa?¿Qué pasa con "DataContext = this" en los controles de usuario de WPF?
Respuesta
En general, cuando alguien usa su control, van a querer establecer su contexto de datos para su propia clase de modelo de vista y vincular las propiedades de su control a su modelo de vista.
Si comienza a perder el contexto de datos internamente dentro del control, y confía en que se establezca en 'esto', o evitará que funcione su enlace, o su control no funcionará como se espera porque confía en eso no se cambia.
Supongamos que tiene un control de usuario que tiene un montón de subcontroles en él. Lo que podría hacer en su lugar es configurar el DataContext en los subcontroles para que sea su clase de control de usuario (o lo que sea que desee). Esto le permitiría vincular esos subcontroles a las propiedades de su control de usuario, al tiempo que permite que cualquier usuario de su control establezca su contexto de datos en su modelo de vista y también se vincula a las propiedades.
- 1. Pasa por todos los controles de usuario en una página
- 2. Desecho Controles de usuario WPF
- 3. WPF Lista de los diferentes tipos de controles de usuario
- 4. Extendiendo controles de usuario en WPF
- 5. Cómo utilizar los controles de usuario en WPF MVVM
- 6. Limpieza adecuada de los controles de usuario de WPF
- 7. Controles de usuario WPF frente a controles personalizados
- 8. WPF: ¿cómo cargo dinámicamente los controles de usuario?
- 9. ¿Caliburn.Micro funciona muy bien con los controles de usuario?
- 10. ¿WPF tiene controles equivalentes para todos los controles de Winforms?
- 11. ¿Qué pasa con los parámetros de salida?
- 12. Lista de controles de usuario en WPF ItemsControl
- 13. WPF Tooltip con controles
- 14. ItemSource vs Datacontext en wpf
- 15. ¿Por qué los controles WPF no tienen propiedad de etiqueta?
- 16. Cómo sincronizar animaciones entre controles de usuario en WPF
- 17. ¿Cómo se permite al usuario agregar anotaciones a los controles de la interfaz de usuario en WPF?
- 18. Decodificador WPF con controles dentro
- 19. ASP.NET MVP - Utilizando los controles de usuario
- 20. ¿Cómo habilitar al usuario para arrastrar/soltar los controles de usuario de WPF en cualquier lugar de la página?
- 21. Controles de ajuste de WPF
- 22. Controles WPF en WinForms
- 23. ¿Existe una convención de nomenclatura estándar para los controles de interfaz de usuario de WPF?
- 24. Lista desplegable con controles de menú WPF
- 25. ¿Por qué los controles WinForms/WPF no usan Invoke internamente?
- 26. ¿Qué pasa con los colores WebSafe?
- 27. Controles compuestos de WPF
- 28. ¿Qué pasa con este URI?
- 29. Uso excesivo de ASP.Net de los controles de usuario
- 30. Agregar controles dinámicamente a controles de usuario
Gracias, pero ¿cuál es la alternativa? –
@blahblah: He actualizado mi respuesta con una alternativa. –