如何在通用app / Windows 8.1和Windows Phone的所有页面上绑定App.xaml.cs上的属性?

时间:2014-11-15 16:34:34

标签: c# data-binding win-universal-app

我需要检查应用的互联网状态,而不会干扰用户界面。我按照这个http://msdn.microsoft.com/en-us/library/windows/apps/xaml/jj835820.asp教程中的步骤进行操作。我将它应用到我的App.xaml.cs.我的实现工作,它会在我的互联网连接发生变化时检查每个页面上的互联网连接,但是,我似乎无法在每个页面上更新说明互联网状态的文本。文本的值在app.xaml.cs中更新。我在app.xaml.cs(InternetStatus)中定义了一个属性,并将其绑定到每个页面的TextBlock Text = {Binding InternetStatus}。我做了一个断点,在检查页面的.xaml时,TextBlock保持正确的值,但它没有显示在UI中。任何帮助表示赞赏。谢谢。

1 个答案:

答案 0 :(得分:0)

我必须解决类似的问题,并提出这样的解决方案:

App.xaml.cs:

public static string MyTextVariable = "xxxxx";

MyPage.xaml:

<TextBlock Name="MyTextBlock" Text="{Binding}"/>

MyPage.xaml.cs:

public MyPage()
{
    this.InitializeComponent();
    MyTextBlock.DataContext = App.MyTextVariable;
}

我为ListView和共享项目集合制作了它,所以这个例子没有经过实际测试,但它的工作方式与列表相同。