エッセンシャル WPF P.124より引用
列の数、ヘッダの内容、およびビューに関するその他の事項を制御するためのプロパティは、ListViewにはありません。代わりに、ListView.ViewプロパティをGridViewに設定し、このオブジェクトのプロパティを設定する必要があります。
ソースコード
App.xaml
<Application x:Class="HelloWorld.App" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" StartupUri="Page1.xaml"> </Application>
Page1.xaml
<Page x:Class="WpfApplication1.Page1" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" mc:Ignorable="d" Title="Page1"> <Grid> <StackPanel> <ListView x:Name="listView"> <ListView.View> <GridView> <GridViewColumn Width="100" Header="名前" DisplayMemberBinding="{Binding Path=Name}" /> <GridViewColumn Width="100" Header="年齢" DisplayMemberBinding="{Binding Path=Age}" /> </GridView> </ListView.View> </ListView> </StackPanel> </Grid> </Page>
Page1.xaml.cs
using System.Windows.Controls; namespace WpfApplication1 { public partial class Page1 : Page { public Page1() { InitializeComponent(); listView.ItemsSource = new Person[] { new Person() { Name = "山田", Age = 20 }, new Person() { Name = "田中", Age = 21 }, new Person() { Name = "鈴木", Age = 22 }}; } } }
Person.cs
namespace WpfApplication1 { internal class Person { public string Name { get; set; } public int Age { get; set; } } }