- Par défaut, oui. Pour les alternatives, voir la réponse 3.
- Par défaut, toutes sauf les DLL principales installées par le moteur d'exécution; Il contiendra tout ce qui se trouve dans le SDK, la boîte à outils, les contrôles tiers ou vos propres bibliothèques.
- Par défaut, oui. Cependant, il existe une option à partir de Silverlight 3 pour empaqueter certains assemblages (par exemple n'importe quoi du SDK) dans des fichiers ZIP séparés, qui sont téléchargés séparément. Dans Visual Studio, recherchez dans les propriétés du projet une case à cocher intitulée «Réduire la taille XAP en utilisant la mise en cache de la bibliothèque d'applications». Cette option permet de basculer entre créer/utiliser les fichiers ZIP ou non. L'activation de l'option ZIP permet à plusieurs applications Silverlight de partager la dépendance sur les fichiers ZIP. Ainsi, au lieu de tout empaqueter dans le XAP, il suffit de télécharger le ZIP pour une application et de le sauvegarder dans les autres applications.
En ce qui concerne le contenu général du fichier XAP, il y a 2 bits importants:
- FOO.DLL - assemblage principal de votre projet (renommé selon le cas)
- AppManifest.xaml - décrit les Exigences requises pour votre application, par exemple la version d'exécution minimale requise, le point d'entrée dans Foo.dll et d'autres paramètres, y compris les paramètres Out-of-browser, ou d'utiliser la fonctionnalité de mise en cache de bibliothèque mentionnée ci-dessus.
Tout le contenu n'est que du contenu utilisé par votre application.