2010-11-12 9 views
0

Je construis une application Silverlight Windows Phone 7. J'ai l'élément suivant:Silverlight: référence le même élément plusieurs fois sans redondance?

<TextBox x:Name="DownloadFailed" 
     Text="MySite.com could not be reached at this time. Do you have a network connection? &#xd;&#xa;&#xd;&#xa;Try again in a few minutes." 
     BorderBrush="{x:Null}" Background="{x:Null}" 
     Foreground="{StaticResource PhoneDisabledBrush}" Margin="56,8,8,-8" TextWrapping="Wrap" /> 

Comment puis-je le définir une fois et l'ajouter à plusieurs pages dans mon application?

Je pourrais faire un contrôle d'utilisateur, mais cela semble être exagéré pour un seul élément avec quelques propriétés.

Pourrais-je utiliser le dictionnaire StaticResource d'une manière ou d'une autre? Ou est-ce juste pour les propriétés?

La raison pour laquelle je fais cela est parce que j'ai du contenu sur un certain nombre de pages différentes que l'application tente de charger à partir d'un service Web, mais peut échouer. Existe-t-il un modèle/encapsulation de conception classique pour un tel contrôle/contenu?

Répondre

0

Une façon que je l'ai mis en œuvre cette exigence dans mes applications pour définir ce -

public static void ShowMessage(string message) 
{ 
    Deployment.Current.Dispatcher.BeginInvoke(() => MessageBox.Show(message)); 
} 

dans une classe Helper statique. Je l'utilise alors comme -

Helper.ShowMessage("Error Loading Data from remote service. Please try again later."); 

Vous pouvez envisager la construction d'un contrôle qui enveloppe le TextBlock (Votre code exemple utilise TextBox, pour afficher du texte statique, vous pouvez utiliser TextBlock) et invoquer la commande en utilisant la méthode ci-dessus.

HTH, indyfromoz