XAML 中的建筑瓷砖
Building Tile in XAML
我正在尝试通过 XAML 添加磁贴。我最终想向磁贴添加文本,例如新闻文章(所以我的 mainpage.xaml 中的每个磁贴都有一篇新闻文章)。谁能给我举个例子或给我看一个代码片段来说明如何实现这一点?我将 post 我正在努力完成的截图....
这是我在网上找到的代码片段,但看起来像是用于 Windows 8 开发?
<controls:Tile Title="Hello!"
TiltFactor="2"
Width="100" Height="100"
Count="1">
</controls:Tile>
注意:这是一个通用Windows应用程序
看看xaml中的GridView(W8和UWP都存在)
https://msdn.microsoft.com/nl-nl/library/windows/apps/windows.ui.xaml.controls.gridview.aspx
您可以定义一个 ItemContainterStyle
使其看起来像您的图块。
一个例子,有一些硬编码的项目:
<GridView Width="800" Height="300">
<GridView.ItemsPanel>
<ItemsPanelTemplate>
<ItemsWrapGrid Orientation="Vertical" />
</ItemsPanelTemplate>
</GridView.ItemsPanel>
<GridView.ItemContainerStyle>
<Style TargetType="GridViewItem">
<Style.Setters>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate>
<Grid Background="Gray" Margin="5" Height="100" Width="100">
<ContentPresenter />
</Grid>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style.Setters>
</Style>
</GridView.ItemContainerStyle>
<GridViewItem>
Item1
</GridViewItem>
<GridViewItem>
Item2
</GridViewItem>
<GridViewItem>
Item3
</GridViewItem>
<GridViewItem>
Item4
</GridViewItem>
<GridViewItem>
Item5
</GridViewItem>
<GridViewItem>
Item6
</GridViewItem>
<GridViewItem>
Item7
</GridViewItem>
<GridViewItem>
Item8
</GridViewItem>
</GridView>
这看起来像:
如果您想将 ItemsSource 绑定到您的 VM,您可以这样做。
假设 属性 public ObservableCollection<string> Items {get;set;}
存在于您的虚拟机中。
将<GridView Width="800" Height="300">
替换为<GridView Width="800" Height="300" ItemsSource="{Binding Items}">
我正在尝试通过 XAML 添加磁贴。我最终想向磁贴添加文本,例如新闻文章(所以我的 mainpage.xaml 中的每个磁贴都有一篇新闻文章)。谁能给我举个例子或给我看一个代码片段来说明如何实现这一点?我将 post 我正在努力完成的截图....
这是我在网上找到的代码片段,但看起来像是用于 Windows 8 开发?
<controls:Tile Title="Hello!"
TiltFactor="2"
Width="100" Height="100"
Count="1">
</controls:Tile>
注意:这是一个通用Windows应用程序
看看xaml中的GridView(W8和UWP都存在) https://msdn.microsoft.com/nl-nl/library/windows/apps/windows.ui.xaml.controls.gridview.aspx
您可以定义一个 ItemContainterStyle
使其看起来像您的图块。
一个例子,有一些硬编码的项目:
<GridView Width="800" Height="300">
<GridView.ItemsPanel>
<ItemsPanelTemplate>
<ItemsWrapGrid Orientation="Vertical" />
</ItemsPanelTemplate>
</GridView.ItemsPanel>
<GridView.ItemContainerStyle>
<Style TargetType="GridViewItem">
<Style.Setters>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate>
<Grid Background="Gray" Margin="5" Height="100" Width="100">
<ContentPresenter />
</Grid>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style.Setters>
</Style>
</GridView.ItemContainerStyle>
<GridViewItem>
Item1
</GridViewItem>
<GridViewItem>
Item2
</GridViewItem>
<GridViewItem>
Item3
</GridViewItem>
<GridViewItem>
Item4
</GridViewItem>
<GridViewItem>
Item5
</GridViewItem>
<GridViewItem>
Item6
</GridViewItem>
<GridViewItem>
Item7
</GridViewItem>
<GridViewItem>
Item8
</GridViewItem>
</GridView>
这看起来像:
如果您想将 ItemsSource 绑定到您的 VM,您可以这样做。
假设 属性 public ObservableCollection<string> Items {get;set;}
存在于您的虚拟机中。
将<GridView Width="800" Height="300">
替换为<GridView Width="800" Height="300" ItemsSource="{Binding Items}">