2008-10-28 6 views
2

J'ai actuellement une application Silverlight qui tourne à travers plusieurs graphiques de données en direct. Cependant, chaque page a deux contrôles utilisateur: un pour une boîte d'information en haut et un autre pour le graphique à afficher. J'ai essayé d'ajouter une image d'arrière-plan à la page maître sur laquelle ils sont affichés afin que l'image soit derrière tout mais dès qu'ils se chargent, ils écrasent l'image avec leur toile vierge.Définition de l'image d'arrière-plan dans Silverlight

Jusqu'à présent, les tentatives visant à rendre transparent l'arrière-plan des contrôles utilisateur n'ont eu aucun effet.

Toute aide serait grandement appréciée.

Répondre

0

Il y a sûrement quelque chose dans les commandes de l'utilisateur qui a un fond blanc, vous pourriez probablement le trouver en utilisant Blend, ou peut-être en utilisant Silverlight Spy. Spy est une excellente application qui vous permet de voir l'arbre visuel d'une application en cours d'exécution, entre autres choses.

3

Vous devez définir l'arrière-plan pour être transparent sur le contrôle hôte lui-même, pas seulement dans les fichiers xaml qui sont chargés. Si vous utilisez la balise objet que vous feriez quelque chose comme:

<object data="data:application/x-silverlight-2," type="application/x-silverlight-2" width="100%" height="100%"> 
    <param name="source" value="[your xap file]"/> 
    <param name="background" value="transparent" /> 
     .... 
</object> 

Parce que le contrôle hôte silverlight réelle a une couleur d'arrière-plan, si vous ne définissez pas être transparent, il sera par défaut blanc qui écrasera votre arrière-plan, peu importe si votre toile est transparente.

3

Cela fonctionne maintenant parfaitement. Il faut

<param name="windowless" value="true" /> 

ainsi que de définir l'arrière-plan transparent.

Merci pour votre aide, c'était très apprécié.

Questions connexes