【发布时间】:2017-03-28 17:45:53
【问题描述】:
我很难从 VS 2015 for Windows 8.1 的示例 Hub 应用程序中了解下面 XAML 中 TextBlocks 中 Text 属性的实际来源
<Page
x:Name="pageRoot"
x:Class="App2.HubPage"
DataContext="{Binding DefaultViewModel, RelativeSource={RelativeSource Self}}"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="using:App2"
xmlns:data="using:App2.Data"
xmlns:common="using:App2.Common"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
mc:Ignorable="d">
<Grid Background="{ThemeResource ApplicationPageBackgroundThemeBrush}">
<Hub SectionHeaderClick="Hub_SectionHeaderClick">
<HubSection Width="500" x:Uid="Section1Header" Header="Section 1">
<DataTemplate>
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
<RowDefinition Height="*" />
</Grid.RowDefinitions>
<Image Source="Assets/MediumGray.png" Stretch="Fill" Width="420" Height="280"/>
<TextBlock Style="{StaticResource SubheaderTextBlockStyle}" Grid.Row="1" Margin="0,10,0,0" TextWrapping="Wrap"
x:Uid="Section1Subtitle" Text="{StaticResource AppName}"/>
<TextBlock Style="{StaticResource TitleTextBlockStyle}" Grid.Row="2" Margin="0,10,0,0"
x:Uid="DescriptionHeader" Text="Description text:"/>
<TextBlock Style="{StaticResource BodyTextBlockStyle}" Grid.Row="3"
x:Uid="Section1DescriptionText" Text="Lorem ipsum dolor sit amet, consectetuer ising elit, sed diam nonummy nibh uismod tincidunt ut laoreet suscipit lobortis ni ut wisi quipexerci quis consequat minim veniam, quis nostrud exerci tation ullam corper. Lorem ipsum dolor sit amet, consectetuer ising elit, sed diam nonummy nibh uismod tincidunt ut laoreet suscipit lobortis ni ut wisi quipexerci quis consequat minim veniam, quis nostrud exerci tation ullam corper. "/>
</Grid>
</DataTemplate>
</HubSection>
现在,我很好奇的是。如果我在任何TextBlocks 中编辑Text 属性并运行应用程序,它将被替换为以前存在的值。
因此,如果我执行以下操作:
<TextBlock Style="{StaticResource TitleTextBlockStyle}" Grid.Row="2" Margin="0,10,0,0"
x:Uid="DescriptionHeader" Text="zzz TEST zzz:"/>
它将恢复到执行之前的任何值。
它没有绑定到SampleDataSource.json 中的 .json 文件。我能看到的唯一连接是 Resources.resw 文件,其中包含对应于 x:Uid 的条目,例如`x:Uid="Section1Subtitle"。这些资源是如何通过 x:Uid 获取和连接的?因为我想这就是应用程序执行时发生的情况?
【问题讨论】:
标签: c# xaml windows-store-apps