我在使用 Xaml/win8 中新创建的空白页时遇到问题。这是我的代码:
<common:LayoutAwarePage
x:Name="pageRoot"
x:Class="MyApp.Contents"
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:MyApp"
xmlns:common="using:MyApp.Common"
xmlns:data="using:MyApp.Data"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
mc:Ignorable="d">
<Page.Resources>
<!-- Collection of items displayed by this page -->
<CollectionViewSource
x:Name="itemsViewSource"
Source="{Binding Items}"
d:Source="{Binding TestSource.Items, Source={d:DesignInstance Type=data:MyDataSource, IsDesignTimeCreatable=True}}"/>
</Page.Resources>
<!-- Snip Grid and Back Button -->
<ListView
x:Name="itemListView"
AutomationProperties.AutomationId="ItemsListView"
AutomationProperties.Name="Items"
TabIndex="1"
Grid.Row="1"
Margin="-10,-10,0,0"
Padding="120,0,0,60"
ItemsSource="{Binding Source={StaticResource itemsViewSource}}"
IsSwipeEnabled="False"
ItemTemplate="{StaticResource ItemTemplate}"/>
这是支持它的 C#(TestSource 构造函数):
for (int i = 0; i < 20; ++i)
TestSource.Items.Add(new ExampleData(TestSource));
在设计器中,这可以正常工作。我完全按照您的预期看到了 20 个 ExampleData 的列表。
但是,当我运行该应用程序时,页面上没有显示任何内容。没有“ExampleData”项目出现(即使我确定“TestSource.Items”可观察集合已正确填充。
我主要从 SplitView 演示中复制/粘贴了这个绑定示例。有谁知道出了什么问题?=[