在WPF中创建ListView?

时间:2010-01-04 17:48:02

标签: c# wpf xaml listview

大家好,新年快乐(2010)。

我在WPF的ListView中是一个新手 我将通过XAML和C#在WPF中创建以下ListView:
http://xs.to/image-A835_4B3EF7EE.jpg

你能指导我,我该怎么做? 感谢。

1 个答案:

答案 0 :(得分:1)

我使用下面的XAML代码完成了它:

<ListView x:Name="ListView1" Background="#FFEEF3FA" SelectionChanged="ListView1_SelectionChanged" VirtualizingStackPanel.IsVirtualizing="True" local:ListViewSorter.IsListviewSortable="True" MouseDoubleClick="ListView1_MouseDoubleClick" ItemsSource="{Binding ListViewItemsCollections}">
    <ListView.View>
        <GridView AllowsColumnReorder="False">
            <GridViewColumn x:Name="GridViewColumnName" Header="Name"  Width="200">
                <GridViewColumn.CellTemplate>
                    <DataTemplate>
                        <StackPanel Orientation="Horizontal">
                            <Image x:Name="Image_GridViewColumnName" Width="16" Height="16" Source="{Binding GridViewColumnName_ImageSource}" />
                            <Label Content="{Binding GridViewColumnName_LabelContent}" />
                            <Label Content="{Binding GridViewColumnName_ID}" Visibility="Hidden" />
                        </StackPanel>
                    </DataTemplate>
                </GridViewColumn.CellTemplate>
            </GridViewColumn>
            <GridViewColumn x:Name="GridViewColumnTags" Header="Tags" Width="100" DisplayMemberBinding="{Binding GridViewColumnTags}" />
            <GridViewColumn x:Name="GridViewColumnLocation" Header="Location" Width="238" DisplayMemberBinding="{Binding GridViewColumnLocation}" />
        </GridView>
    </ListView.View>

并遵循C#代码:

public partial class MainWindow : Window
{
    ObservableCollection<ListViewItemsData> _ListViewItemsCollections = new ObservableCollection<ListViewItemsData>();
    public ObservableCollection<ListViewItemsData> ListViewItemsCollections { get { return _ListViewItemsCollections; } }
}
public class ListViewItemsData
{
    public string GridViewColumnName_ImageSource { get; set; }
    public string GridViewColumnName_LabelContent { get; set; }
    public string GridViewColumnName_ID { get; set; }
    public string GridViewColumnTags { get; set; }
    public string GridViewColumnLocation { get; set; }
}