如何动态设置ListView列?

时间:2015-08-08 14:41:09

标签: wpf

我有简单的列表。 我需要定义Table,这个表的每一列都是这个列表元素之一。

所以我将使用ListView - 我需要定义一个ListView,这个ListView的每一列都是我的List =>之一

第一列名称是List [0]
第二列名称是List [1]
。 。

我不能以任何方式做到这一点 我谷歌它,所有示例都显示如何创建动态行

任何帮助请...

2 个答案:

答案 0 :(得分:2)

您需要具有GridView设置的ListView才能执行此操作。例如:

来自http://www.wpf-tutorial.com/listview-control/listview-with-gridview/

<Window x:Class="WpfTutorialSamples.ListView_control.ListViewGridViewSample"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        Title="ListViewGridViewSample" Height="200" Width="400">
    <Grid>
                <ListView Margin="10" Name="lvUsers">
                        <ListView.View>
                                <GridView>
                                        <GridViewColumn Header="Name" Width="120" DisplayMemberBinding="{Binding Name}" />
                                        <GridViewColumn Header="Age" Width="50" DisplayMemberBinding="{Binding Age}" />
                                        <GridViewColumn Header="Mail" Width="150" DisplayMemberBinding="{Binding Mail}" />
                                </GridView>
                        </ListView.View>
                </ListView>
        </Grid>
</Window>

一旦有了GridView,那么添加列就像将GridViewColumn添加到GridView的Columns集合一样简单。

来自http://www.c-sharpcorner.com/UploadFile/mahesh/gridview-in-wpf/

private void CreateDynamicGridView()
{
    // Create a GridView 
    GridView grdView = new GridView();
    grdView.AllowsColumnReorder = true;
    grdView.ColumnHeaderToolTip = "Authors";

    GridViewColumn nameColumn = new GridViewColumn();
    nameColumn.DisplayMemberBinding = new Binding("Name");
    nameColumn.Header = "Author Name";
    nameColumn.Width = 120;
    grdView.Columns.Add(nameColumn);

    GridViewColumn ageColumn = new GridViewColumn();
    ageColumn.DisplayMemberBinding = new Binding("Age");
    ageColumn.Header = "Age";
    ageColumn.Width = 30;
    grdView.Columns.Add(ageColumn);

    GridViewColumn bookColumn = new GridViewColumn();
    bookColumn.DisplayMemberBinding = new Binding("Book");
    bookColumn.Header = "Book";
    bookColumn.Width = 250;
    grdView.Columns.Add(bookColumn);

    GridViewColumn mvpColumn = new GridViewColumn();
    mvpColumn.DisplayMemberBinding = new Binding("Mvp");
    mvpColumn.Header = "Mvp";
    mvpColumn.Width = 50;
    grdView.Columns.Add(mvpColumn);

    ListView1.View = grdView;
}

答案 1 :(得分:0)

您可以使用水平放置的项目为ListView设置样式。

像这样:

jQuery(document).ready(function(){

   inner_variable = inner_variable + 1;


   jQuery.ajax({
         //code

   }).done(function(response){
     var inner_varaiable  = response;
   });


});

请参阅:How do I make WPF ListView items repeat horizontally, like a horizontal scrollbar?