Xaml 在UWP中设置ListView的样式

Xaml 在UWP中设置ListView的样式,xaml,uwp,uwp-xaml,Xaml,Uwp,Uwp Xaml,我在stackoverflow上找到了我的问题的问题+答案,但对我来说,还不完全清楚该在哪里更改 ListViewItemPresenter 我尝试了很多东西,但似乎我自己找不到:( 以下是此框架的XAML代码: <Page.Resources> <DataTemplate x:Key="ItemListDataTemplate" x:DataType="data:Item"> <StackPanel Orientation="Horizo

我在stackoverflow上找到了我的问题的问题+答案,但对我来说,还不完全清楚该在哪里更改

ListViewItemPresenter
我尝试了很多东西,但似乎我自己找不到:(

以下是此框架的XAML代码:

<Page.Resources>
    <DataTemplate x:Key="ItemListDataTemplate" x:DataType="data:Item">
        <StackPanel Orientation="Horizontal" HorizontalAlignment="Left">
            <Image Name="image" Source="{x:Bind CoverImage}" HorizontalAlignment="Center" Width="150" />
            <StackPanel Margin="20,20,0,0">
                <TextBlock Text="{x:Bind Name}" HorizontalAlignment="Left" FontSize="16" Name="NameTextBlock"/>
                <TextBlock Text="{x:Bind Description}" HorizontalAlignment="Left" FontSize="10" Name="DescriptionTextBlock"/>
                <StackPanel Orientation="Horizontal">
                    <TextBlock Text="{x:Bind Price}" HorizontalAlignment="Left" FontSize="26" Name="PriceTextBlock"/>
                    <TextBlock Text="€" FontSize="26" Name="Currency" Margin="5,0,0,0"/>
                </StackPanel>
            </StackPanel>
        </StackPanel>
    </DataTemplate>
</Page.Resources>
<Grid Background="{ThemeResource ApplicationPageBackgroundThemeBrush}">
    <ListView ItemsSource="{x:Bind Items}"
              ScrollViewer.VerticalScrollBarVisibility="Hidden"
              ItemClick="ListView_ItemClick" 
              IsItemClickEnabled="True" 
              ItemTemplate="{StaticResource ItemListDataTemplate}"
              >
    </ListView>
</Grid>


有人能帮我吗?非常感谢您抽出时间!

只需将您的数据模板添加到Listview中即可

将其放入ItemTemplate属性中

   <ListView ItemsSource="{x:Bind Items}"
        ScrollViewer.VerticalScrollBarVisibility="Hidden"
        ItemClick="ListView_ItemClick" 
        IsItemClickEnabled="True" >
   <ListView.ItemTemplate>
      <DataTemplate>
        <StackPanel Orientation="Horizontal" HorizontalAlignment="Left">
            <Image Name="image" Source="{x:Bind CoverImage}" HorizontalAlignment="Center" Width="150" />
            <StackPanel Margin="20,20,0,0">
                <TextBlock Text="{x:Bind Name}" HorizontalAlignment="Left" FontSize="16" Name="NameTextBlock"/>
                <TextBlock Text="{x:Bind Description}" HorizontalAlignment="Left" FontSize="10" Name="DescriptionTextBlock"/>
                <StackPanel Orientation="Horizontal">
                    <TextBlock Text="{x:Bind Price}" HorizontalAlignment="Left" FontSize="26" Name="PriceTextBlock"/>
                    <TextBlock Text="€" FontSize="26" Name="Currency" Margin="5,0,0,0"/>
                </StackPanel>
            </StackPanel>
        </StackPanel>
    </DataTemplate>     
  </ListView.ItemTemplate>

</ListView>

有两种方法可以编辑页面中的
ListViewItemPresenter

  • 您可以从(默认样式下的第一个XAML代码块)复制XAML模板。将其添加到您的
    页面。参考资料
    ListViewItemPresenter
    位于这些XAML代码中,您可以编辑其属性,此样式将应用于此页面的ListView的所有项目。注意:不要将
    x:Key
    添加到此样式

  • ListViewItem
    控件添加到页面,如下所示:

    <Grid Background="{ThemeResource ApplicationPageBackgroundThemeBrush}">
        <ListViewItem></ListViewItem>
    </Grid>
    
    
    
    文档大纲->选择ListViewItem->编辑模板->编辑副本:

  • 删除生成的样式资源的
    x:Key
    属性,以便此样式将应用于所有ListViewItem。然后可以在生成的XAML资源中编辑
    ListViewItemPresenter