Categories: WPF 教程

WPF教程之 一个简单的ListView示例

ListView控制项:

一个简单的ListView示例

WPF ListView控件是最简单的形式。事实上,它看起来很像WPF ListBox,直到你开始添加专门的视图。这并不奇怪,因为ListView直接从ListBox控件继承。因此,默认的ListView实际上只是一个ListBox,具有不同的选择模式(稍后将详细介绍)。

让我们尝试以最简单的形式创建ListView:

<Window x:Class="WpfTutorialSamples.ListView_control.ListViewBasicSample"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        Title="ListViewBasicSample" Height="200" Width="200">
    <Grid>
  <ListView Margin="10">
   <ListViewItem>A ListView</ListViewItem>
   <ListViewItem IsSelected="True">with several</ListViewItem>
   <ListViewItem>items</ListViewItem>
  </ListView>
 </Grid>
</Window>

这非常简单,使用手动指定的ListViewItem来填充列表,只有一个文本标签代表每个项目 – 一个最低限度的WPF ListView控件。

有图片的ListViewItem

由于WPF的无外观特性,为ListViewItem指定图像不仅仅是为图像ID或键指定属性。相反,您可以完全控制它并指定在ListViewItem中呈现图像和文本所需的控件。这是一个例子:

<Window x:Class="WpfTutorialSamples.ListView_control.ListViewBasicSample"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        Title="ListViewBasicSample" Height="200" Width="200">
    <Grid>
  <ListView Margin="10">
   <ListViewItem>
    <StackPanel Orientation="Horizontal">
     <Image Source="/WpfTutorialSamples;component/Images/bullet_green.png" Margin="0,0,5,0" />
     <TextBlock>Green</TextBlock>
    </StackPanel>
   </ListViewItem>
   <ListViewItem>
    <StackPanel Orientation="Horizontal">
     <Image Source="/WpfTutorialSamples;component/Images/bullet_blue.png" Margin="0,0,5,0" />
     <TextBlock>Blue</TextBlock>
    </StackPanel>
   </ListViewItem>
   <ListViewItem IsSelected="True">
    <StackPanel Orientation="Horizontal">
     <Image Source="/WpfTutorialSamples;component/Images/bullet_red.png" Margin="0,0,5,0" />
     <TextBlock>Red</TextBlock>
    </StackPanel>
   </ListViewItem>
  </ListView>
 </Grid>
</Window>

我们在这里做的很简单。因为ListViewItem派生自ContentControl类,所以我们可以指定WPF控件作为其内容。在这种情况下,我们使用StackPanel,它有一个Image和一个TextBlock作为它的子控件。

小结

如您所见,在XAML中手动构建ListView非常简单,但在大多数情况下,ListView数据将来自某种数据源,应在运行时在ListView中呈现。我们将在下一章中研究这样做。

admin

这个人很懒,什么都没有留下~

Share
Published by
admin

Recent Posts

聊聊vue3中的defineProps

在Vue 3中,defineP…

1 周 ago

在 Chrome 中删除、允许和管理 Cookie

您可以选择删除现有 Cooki…

2 周 ago

自定义指令:聊聊vue中的自定义指令应用法则

今天我们来聊聊vue中的自定义…

3 周 ago

聊聊Vue中@click.stop和@click.prevent

一起来学下聊聊Vue中@cli…

4 周 ago

Nginx 基本操作:启动、停止、重启命令。

我们来学习Nginx基础操作:…

4 周 ago

Vue3:手动清理keep-alive组件缓存的方法

Vue3中手动清理keep-a…

1 月 ago