que tiene un control de usuario que he creado que importa varias partes utilizando el atributo [Import]
.Usando MEF en los controles instanciados de XAML
public class MyUserControl : UserControl, IPartImportsSatisfiedNotification
{
[Import]
public IService Service { get; set; }
public MyUserControl()
{
}
public void OnImportsSatisfied()
{
// Do something with Service.
}
}
Este control de usuario se crea una instancia de XAML, por lo que sus importaciones no están siendo satisfechas y OnImportsSatisfied
no se está llamando.
<local:MyUserControl />
Mi pregunta es cómo puedo satisfacer las importaciones de mi clase cuando se está creando en XAML.
que podría ser difícil de hacer, porque por lo general se descarga WPF controles que no son visibles, por lo que este control sólo puede existir una vez, pero puede ser que consiga cargado y descargado varias veces. – Rachel
@Rachel para evitar eso, podría usar cargas perezosas. –
¿Estás seguro de que esto es lo correcto? Parece que está intentando poner la lógica empresarial en el control de la interfaz de usuario. Lo cual siempre es malo. – Euphoric