2013-06-27 39 views
0

我不知道我需要多少列 - 我设法使用转换器来生成它。动态填充WPF中的ListView

代码:

public object Convert(object value, Type targetType, object parameter, CultureInfo culture) 
    { 
     var config = value as ColumnConfig; 
     if (config != null) 
     { 
      var grdiView = new GridView(); 
      foreach (var column in config.Columns) 
      { 
       var binding = new Binding(column.DataField); 
       grdiView.Columns.Add(new GridViewColumn { Header = column.Header, DisplayMemberBinding = binding }); 
      } 
      return grdiView; 
     } 
     return Binding.DoNothing; 
    } 

但是,现在有一个与用数据填充ListView的一个问题。我该怎么做?我试过用它填充

List<List<string>> 

但它不起作用。

我需要做的就是用字符串填充ListView。

任何想法?

+0

我不能肯定你做了什么,但尝试的ObservableCollection insted的列表 – ZSH

回答

0

好了,解决的办法是:

public object Convert(object value, Type targetType, object parameter, CultureInfo culture) 
    { 
     var config = value as ColumnConfig; 
     if (config != null) 
     { 
      var grdiView = new GridView(); 
      for (int i = 0; i < config.Columns.Count; i++) 
      { 
       var column = config.Columns[i]; 
       var binding = new Binding("["+i +"]"); 
       grdiView.Columns.Add(new GridViewColumn { Header = column.Header, DisplayMemberBinding = binding}); 
      } 
      return grdiView; 
     } 
     return Binding.DoNothing; 
    } 

,并可以绑定到

List<List<string>>