Silverlight:多次引用相同的元素而没有冗余?

时间:2010-11-12 18:13:28

标签: silverlight windows-phone-7 dry

我正在构建一个Silverlight Windows Phone 7应用。我有以下要素:

<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" />

如何定义此内容并将其添加到我的应用中的多个页面?

我可以创建一个用户控件,但对于具有一些属性的单个元素来说,这似乎有些过分。

我可以以某种方式使用StaticResource字典吗?或者仅仅是属性?

我这样做的原因是因为我在应用程序尝试从Web服务加载的许多不同页面上有内容,但可能会失败。这种控制/内容是否有传统的设计模式/封装?

1 个答案:

答案 0 :(得分:0)

我在我的应用中实现此要求的一种方法是定义 -

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

在静态Helper类中。然后我用它作为 -

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

您可以考虑构建一个包含TextBlock的控件(您的示例代码使用TextBox,显示静态文本,您可以使用TextBlock)并使用上述方法调用控件

HTH,indyfromoz