Sto provando ad aggiungere un effetto di sovrapposizione al mio UserControl e so che sono gli ornamenti usati in WPF. Ma sono un po 'confuso su come dovrebbero funzionare. Ho capito che il layer di adorner è implicitamente gestito dal runtime di WPF e, in quanto tale, dovrebbe essere sempre disponibile.Quando viene reso disponibile per la prima volta un layer per decoratore WPF?
Ma quando creo un'istanza del mio UserControl nel codice, non vi è alcun livello di adornatore. Il seguente codice non riesce con eccezione:
var view = new MyUserControl();
var target = view.GetAdornerTarget(); // This returns a specific UI control.
var layer = AdornerLayer.GetAdornerLayer(target);
if (layer == null)
{
throw new Exception("No adorner layer at the moment.");
}
Qualcuno può spiegarmi come funziona? Devo prima posizionare l'istanza UserControl in una finestra di primo livello? O devo in qualche modo definire il livello in qualche modo? Scavare nella documentazione non mi ha portato da nessuna parte.
Grazie!