UWP中的设计时数据样本
本文关键字:数据 样本 UWP | 更新日期: 2023-09-27 18:04:52
我需要在我的应用程序设计器中显示一些数据样本,这样我就可以开始样式化我的页面外观,而不必运行它。我有以下代码
SampleData.cs
public class SampleData
{
public ObservableCollection<Surat> ListSurat
{
get
{
return new ObservableCollection<Surat>()
{
new Surat() {Judul="Title 1", Nomor="1", Tanggal= new DateTime(2014,10,14), ID="414683" },
new Surat() {Judul="Title 2", Nomor="2", Tanggal= new DateTime(2014,10,14), ID="414683" },
};
}
}
}
App.xaml
<Application.Resources>
<ResourceDictionary >
<local:SampleData x:Key="SampleData"/>
</ResourceDictionary>
</Application.Resources>
MyPage.xaml
<ListView x:Name="ListView_DokumenMasuk"
ItemsSource="{Binding ListSurat}"
d:DataContext="{StaticResource SampleData}"
>
<ListView.ItemTemplate>
<DataTemplate>
<Grid Width="450" Height="70">
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="*"/>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<Grid Grid.Row="0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="2*"/>
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<TextBlock Text="{Binding Judul}" Grid.Column="0" FontSize="16"/>
<TextBlock Text="{Binding Tanggal}" Grid.Column="1" FontSize="16"/>
</Grid>
<Grid Grid.Row="1">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="2*"/>
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<TextBlock Grid.Column="0" Text="{Binding Nomor}"/>
<TextBlock Grid.Column="1">
<Run Text="DocID : "/>
<Run Text="{Binding ID}"/>
</TextBlock>
</Grid>
</Grid>
</Grid>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
但是数据样本不会出现,而是作为字段名出现在设计器中。这是我的应用程序设计的截图:https://i.stack.imgur.com/M1B8E.jpg
我一直在寻找这个问题的解决方案,但仍然没有运气,我只找到了WPF的解决方案,我担心如果在UWP有什么变化。
任何帮助将不胜感激!
尝试这样绑定DataContext:
d:DataContext="{Binding Source={d:DesignInstance Type=local:SampleData, IsDesignTimeCreatable=True}}"
缩略形式也可以:
d:DataContext="{d:DesignInstance local:SampleData, IsDesignTimeCreatable=True}"
完成样例,先重建项目
xmlns:sampledata="using:UniversalProject.UWP.SampleData"
d:DataContext="{Binding Source={d:DesignInstance Type=sampledata:StepsSample, IsDesignTimeCreatable=True}}"