【发布时间】:2014-10-18 17:14:27
【问题描述】:
我刚刚创建了我的第一个 Windows Phone 运行时应用程序,并且我正在摆脱编写 Windows Phone Silverlight 应用程序的经验。我几乎不知道有很多差异需要考虑,其中之一是将资源字符串绑定到 UI 中的属性。我从Hub 控件开始,因为它看起来像是一个很棒的模板。我的第一步是创建一个新的HubSection 并创建Header 文本。通常,为了良好的实践和节省时间,我总是在 UI 中创建项目以用于翻译目的时添加我的资源字符串。在此,我无法让 HubSection 标头显示我的资源字符串。
注意,我是 Windows 运行时的新手,目前正在 CHannel9 和 Microsoft Virtual Academy 上做教程。
另外请注意,在这个模板中我没有改变任何东西,所以我在 XAML 中的页面DataContext 仍然是
DataContext="{Binding DefaultViewModel, RelativeSource={RelativeSource Self}}"
目前我拥有的如下
<HubSection x:Uid="HubPage.BuiltInAppsHub">
<HubSection.HeaderTemplate>
<DataTemplate>
<TextBlock x:Uid="HubPage.BuiltInAppsHub.Header"/>
</DataTemplate>
</HubSection.HeaderTemplate>
</HubSection>
在我的 Resources.resw 文件中,我的键值是 HubPage.BuiltInAppsHub.Header.Text,我的值只是 built in apps。所以这里有几个问题。一、如何链接TextBlock 来显示这个字符串值?此外,有没有比创建HeaderTemplate 更直接的方法,我可以不只是在HubSection 的Header 属性中执行此操作,就像我在Header 的@987654335 属性中执行此操作一样@ 在 Silverlight 版本中?任何信息、背景、建议等将不胜感激。
编辑以下显示运行模拟器时的resw资源字符串,但不是在很难看到文本位置的设计器中
<HubSection x:Uid="HubPageBuiltInAppsHub">
<!--<HubSection.HeaderTemplate>
<DataTemplate>
<TextBlock Text="{Binding}"/>
</DataTemplate>
</HubSection.HeaderTemplate>-->
</HubSection>
【问题讨论】:
标签: xaml windows-runtime windows-phone-8.1