将我的设置页面上的滑块链接到xaml中主页面上的字体

时间:2016-03-26 08:18:59

标签: c# xaml win-universal-app

我的Visual Studio项目中有3个xaml页面,一个MainPage.xaml页面,一个Homepage.xaml页面和一个Settings.xaml页面,在我的设置页面上,我有一个用于控制字体大小的滑块,我可以将其绑定到TextBlocks上设置页面并更改其字体大小但如何将其绑定到我的Homepage.xaml上的TextBlocks?

1 个答案:

答案 0 :(得分:0)

您应该有一个共享对象,该对象将被引用到每个视图以用作数据源。创建视图时,您可以通过dependency injection将此对象传递给视图。您的类应该实现INotifyPropertyChanged接口,以便能够通知客户端属性值已更改。

您可以使用EventAggregator或其他event-based patterns更多的复杂和通用解决方案。事件聚合器有助于在低耦合应用程序中实现订阅者/发布者模式。

首先使用要在组件之间发送的属性创建新事件(如果此事件中没有数据,则不带任何属性)。在您的情况下,这类似于OnApplicationFontChangedEvent

接下来订阅事件的所有窗口,并使用从handler参数接收的参数在事件处理程序中更改数据(Font绑定到Label或其他模型属性)。

最后从按钮单击事件处理程序的“设置”视图中提升(或以其他方式发布)您的事件。

正如您所看到的,两个实现都是MVVM库的一部分,this pattern对您的应用程序非常有用。