WPF ListView:包含和不包含图标的项目
如何在WPF中创建ListView,以便某些ListViewItems具有图标,而另一些没有图标?我想获得如下图所示的列表视图 我从下面的代码开始,但不知道如何将图标仅设置为前4项,而不设置为其他项。如果项目没有图标,则其文本应与图中所示的任何图标左对齐 我还需要给没有图标的项目比有图标的项目稍微高一些WPF ListView:包含和不包含图标的项目,wpf,listview,icons,listviewitem,Wpf,Listview,Icons,Listviewitem,如何在WPF中创建ListView,以便某些ListViewItems具有图标,而另一些没有图标?我想获得如下图所示的列表视图 我从下面的代码开始,但不知道如何将图标仅设置为前4项,而不设置为其他项。如果项目没有图标,则其文本应与图中所示的任何图标左对齐 我还需要给没有图标的项目比有图标的项目稍微高一些 <ListView> <ListView.Items> <ListViewItem Content="Save" />
<ListView>
<ListView.Items>
<ListViewItem Content="Save" />
<ListViewItem Content="Save As" />
<ListViewItem Content="Open" />
<ListViewItem Content="Close" />
<ListViewItem Content="Info" />
<ListViewItem Content="Recent" />
<ListViewItem Content="New" />
</ListView.Items>
<ListView.View>
<GridView>
<GridViewColumn>
<GridViewColumn.CellTemplate>
<DataTemplate>
' ???
</DataTemplate>
</GridViewColumn.CellTemplate>
</GridViewColumn>
</GridView>
</ListView.View>
</ListView>
' ???
虽然我同意这看起来像是一个菜单,而不是上面提到的列表视图,但这仍然与MenuItems的使用有关
您应该知道,Wpf中的内容可以通过两种方式设置:一种是直接值,如字符串、StaticResource、Binding(都是字符串的缩写),另一种是声明性值,您可以将元素树描述为内容,如下图所示的iv'e
<ListView>
<ListView.Items>
<ListViewItem>
<ListViewItem.Content>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="2*"/>
</Grid.ColumnDefinitions>
<Image Source="SomeSource.png" />
<TextBlock Text="Save" Grid.Column="1" />
</Grid>
</ListViewItem.Content>
</ListViewItem>
<ListViewItem Content="Save As" />
<ListViewItem Content="Open" />
<ListViewItem Content="Close" />
<ListViewItem Content="Info" />
<ListViewItem Content="Recent" />
<ListViewItem Content="New" />
</ListView.Items>
</ListView>
MenuItem
可能是更好的选择,因为它支持图标和文本。而那些你不想要图像的,只是不填充图标字段是的,菜单项在这里可能是一个更自然的选择。