2009-10-30 38 views
0

我的Silverlight导航应用程序中有大约20页。我有1个用户控件,我想在所有20页中使用。我还需要用户控件的状态在20页中看起来相同。例如,如果他们在应用程序的第1页上,并且他们更改了用户控件的背景颜色,则其他19个页面的颜色将相同。关于如何实现这样的东西的任何想法?在Silverlight Nav App的所有页面中使用相同的用户控件

回答

0

如果这些页面同时处于活动状态,那么您将需要20个用户控件实例。仅仅因为一个控件只能在树中出现一次。否则,您可以在全球可访问的位置(例如,应用程序类,ServiceLocator模式,whatnot)中的某处存储对您的控件的引用,并在适当时将其添加到您的页面。或者更好,你可以只有一个ViewModel类,它代表用户控件的状态(例如Brush属性),并将它设置为你的UserControl的所有实例的DataCOntext。

希望这会有所帮助。

相关问题