GridView和Grid之间的区别

See*_*uD1 4 wpf xaml

谁能告诉我GridView和WPF XAML中的网格之间的区别?

在此处输入图片说明

sla*_*oah 6

这是UWP的详细信息。我认为WPF应该相似。

网格 -用于定义布局和格式或静态信息。它是可用的几个“布局面板”之一(其他包括:RelativePanel,StackPanel,VariableSizedWrapGrid和Canvas)。网格没有ItemSource通过绑定动态显示项目的成员。网格确实有Grid.RowGrid.Column附接(可在其他控件一起使用,即),以网格内他们定位性质。

样例代码:

<Grid x:Name="LayoutPanel1" Background="{ThemeResource ApplicationPageBackgroundThemeBrush}" 
      Margin="20"
      BorderBrush="{StaticResource Page_Brush}"
      BorderThickness="1 1 1 1">

    <Grid.RowDefinitions>
        <RowDefinition/>
        <RowDefinition Height="44"/>
    </Grid.RowDefinitions>

    <Grid.ColumnDefinitions>
        <ColumnDefinition Width="*"/>
        <ColumnDefinition Width="Auto"/>
        <ColumnDefinition/>
    </Grid.ColumnDefinitions>

</Grid>
Run Code Online (Sandbox Code Playgroud)

更多信息:网格类布局面板


GridView-用于显示一组数据或一组数据(即项目的动态数量)。用于显示数据集或集合的另一个控件是ListView。一种使用方式是通过设置ItemSource(即绑定)。默认情况下,数据项在GridView中显示为绑定到的数据对象的字符串表示形式。要确切指定GridView中项目的显示方式,您可以创建一个DataTemplate来定义用于显示单个项目的控件的布局。布局中的控件可以绑定到数据对象的属性,也可以内联定义内容。您将分配给GridView DataTemplateItemTemplate属性。所述DataTemplate可含有一个网格(或任何上述的其它布局面板)来指定的个别项目的控制布局。

样例代码:

<GridView ItemsSource="{x:Bind MyItems}"
          IsItemClickEnabled="True"
          ItemClick="GridView_ItemClick"
          ItemTemplate="{StaticResource MyItemTemplate}"
          BorderBrush="{StaticResource MyItemBrush}" 
          BorderThickness="1 1 1 1"
          HorizontalAlignment="Stretch"
/>
Run Code Online (Sandbox Code Playgroud)

更多信息:GridView控件类列表视图和网格视图指引列表视图和网格视图


Jer*_*rin 5

一个简单的解释是
网格(Grid)
如果您只有一个项目而没有重复的子项目设计,则使用网格。如果子项目的数量是固定的,则
GridView
如果您具有像collection这样的重复设计,并且您不知道可以显示的项目数,那么将使用gridview。
您可以在msdn论坛上找到更多详细信息。