Come evitare errori di progettazione di Visual Studio quando una risorsa WPF viene definita in un progetto separato?Evitare errori di progettazione di Visual Studio quando la risorsa WPF è definita nel progetto separato
Ho tre progetti in un'applicazione WPF composita: l'applicazione principale, una libreria "infrastruttura" e una libreria "modulo". L'applicazione principale fa riferimento agli altri progetti tramite le DLL di output (i progetti non si trovano in un'unica soluzione insieme).
Sto definendo una skin (alcuni pennelli e stili in un ResourceDictionary
) nella libreria "infrastruttura". Vorrei che l'applicazione principale selezionasse una skin e la rendesse disponibile per l'intera applicazione (tramite MergedDictionaries
in App.xaml).
Nel mio modulo voglio utilizzare le risorse definite nella skin caricate dall'applicazione principale. Se faccio riferimento alla risorsa come se fosse localmente disponibile in questo modo:
Background={StaticResource MainBackgroundBrush}
quasi tutto funziona come desiderato. L'eccezione è che il designer di Visual Studio viene confuso e mi dice che "Riferimento a StaticResource 'MainBackgroundBrush' non è stato trovato". Questo mi impedisce in modo efficace di usare il designer.
Cosa posso fare per definire un "skin" ResourceDictionary
in un progetto, fare riferimento a tale skin nell'applicazione principale e quindi utilizzare le sue risorse in un progetto di modulo?
Anche se questo non tecnicamente rispondere alla tua domanda a tutti, Expression Blend 2 non ha problemi con la ricerca a doppia indirezione e rende fuori solo trovare in questi casi specifici nella mia esperienza. – scwagner
In VS2010 Beta 1 è ancora possibile utilizzare il progettista se non riesce a trovare una risorsa. Ti dà un avvertimento e quindi sembra ignorare l'attributo. –