Quiero crear una clase de utilidad simple que no tenga elementos visuales y crearla en XAML para poder definir enlaces de datos. Intenté crear una clase derivada de DependencyObject
y crearla en la sección Window.Resources
, pero no llama a ningún constructor.¿Cómo crear una instancia de clase en XAML?
Respuesta
Parece que las instancias se crean cuando realmente las usa. He encontrado una solución sucia para este problema: colocar FindResource("myClass");
en el constructor de formulario principal.
Puede instancia su clase en el App.xaml, sólo tiene que añadir el espacio de nombres a ella con
xmlns:yourNamespace="clr-namespace...."
Es fácil la ayuda de IntelliSense.
Y luego, en Application.Resources crear su clase
<Application.Resources>
<yourNamespace:YourClass x:Key="yourClassInstanteName" />
</Application.Resources>
espero que esto le ayuda.
Lo hice. El problema es que la instancia de la clase no se crea en tiempo de ejecución (simplemente intente soltar el punto de interrupción en el constructor). – Poma
Parece que las instancias se crean cuando * usa * ellos realmente – Poma
sí, pero sus enlaces lo están usando así que debe instanciarlo – BigL
Sé que estoy publicando en una Pregunta anterior, pero me encontré con esto al tratar de encontrar las respuestas yo mismo. El gran código L publicada era de hecho correcta:
xmlns:yourNamespace="clr-namespace...."
Coloque una copia de los recursos de aplicaciones:
<Application.Resources>
<yourNamespace:YourClass x:Key="yourClassInstanteName" />
</Application.Resources>
La clave adicional para esta información es que la clase debe tener un constructor por defecto. Así, en la fuente de la clase debe tener un método de este modo:
public yourClassName()
- 1. Cómo crear una instancia del objeto DataContext en XAML
- 2. Creación de una instancia de una clase anidada en XAML
- 3. Xaml no puede crear una instancia de "X"
- 4. cómo crear dinámicamente una instancia de una clase en python?
- 5. crear instancia de clase dinámica
- 6. Java cómo crear una instancia de una clase de cadena
- 7. ¿Cómo puedo crear una nueva instancia de clase de una clase dentro de una clase (estática)?
- 8. Crear una instancia de una clase python en C#
- 9. Cómo crear una instancia de PrivateType de clase privada interna
- 10. Cómo hacer AutoMapper crear una instancia de la clase
- 11. crear una nueva instancia de una clase sin operador "nuevo"
- 12. PHP: cómo crear una instancia de una clase con argumentos de otra clase
- 13. Cómo copiar/crear una instancia de clase derivada desde un puntero a una clase base polimórfica?
- 14. instancia global de una clase en C++
- 15. Crear instancia de una clase con dependencias utilizando Autofac
- 16. ¿Crear una instancia de clase desde su nombre?
- 17. Python: crear una instancia de clase sin invocar el inicializador
- 18. Crear una instancia de clase con o sin paréntesis?
- 19. WPF Designer "No se pudo crear una instancia de tipo"
- 20. Crear instancia de clase derivada de una instancia de clase base sin conocer los miembros de la clase
- 21. Cómo crear una instancia de una clase en Objective-C que no heredan de NSObject
- 22. Cómo crear una instancia dinámica de una clase en Objective-C
- 23. ¿Cómo crear una instancia de enum usando reflection en java?
- 24. ¿Cómo establecer/crear una instancia de Generics?
- 25. Cómo crear una instancia de org.springframework.dao.DataAccessException?
- 26. Cómo crear una clase dinámicamente en Java
- 27. Clase 'Habitación' es abstracto; no se puede crear una instancia
- 28. ¿Cómo crear una instancia predeterminada después de crear una instancia con nombre?
- 29. Cómo crear una instancia común/compartida en vba
- 30. Crear Genérico Clase Instancia de Método estático en una clase derivada
que he encontrado solución para este problema sucia - colocar 'FindResource ("myClass");' en forma principal constructor. – Poma
Nice little hack :) – BigL