2015-12-02 38 views
1

我見過一些類似的帖子。 這裏的區別在於我不想手動設置所有列的綁定。如何將數據網格綁定到一個成員是列表的類?

所以我有一個類

public class PartProgram 
{ 
    public string Description { get; set; } 
    public string Note { get; set; }  
    public string PartProgramFilename { get; set; } 
    public List<String> LstBlades { get; set; } 
} 

,我已經通過它綁定到一個DataGridView:

dtgPPtab3.ItemsSource = olstPartPrograms; 

其中

public ObservableCollection<PartProgram> olstPartPrograms = new ObservableCollection<PartProgram>(); 

能正常工作幾乎無處不在,其結果是在下面的圖片:

enter image description here

因此,所有的列都正確的,但在最後一個,我想有收藏價值改爲類似blade1,刀片2等

+0

@SonerGönül只是爲了理解。是否將編程語言放在標題中是錯誤的,因爲這是一個與C#WPF無關的普遍問題? – Patrick

+0

問題可能與C#和WPF有關,但通常不需要在標題中添加標籤。你可以閱讀[應該問題包括「標籤」在他們的標題?](http://meta.stackexchange.com/q/19190/158761) –

回答

0

行,所以感謝大家的幫助,但我發現從http://www.wpf-tutorial.com/datagrid-control/details-row/

採取了非常簡單的解決辦法想象一下,有綁定到一個DataGrid類:

ObservableCollection<User> users = new ObservableCollection<User>(); 
List<String> lst = new List<string>(); 
lst.Add("AAA"); 
lst.Add("BBB"); 
lst.Add("CCC"); 
users.Add(new User() { Id = 1, Name = "John Doe", Str = lst }); 
dg.ItemsSource = users; 

如果我想詳細在類我添加訪問器的詳細信息:

public class User 
{ 
    public int Id { get; set; } 
    public string Name { get; set; } 
    public List<String> Str { get; set; } 
    public string Details<-------------------------------- 
    { 
     get 
     { 
      String locStr=string.Empty; 
      foreach (var item in this.Str) 
       locStr += item + ", "; 
      return locStr; 
     } 
    } 
} 

它提供了魔術有一個可以理解的清單版本。 所以結果是: i get a string from a list

0

你必須使用一個ItemsControl(數據網格/ ListView等)顯示收集列的內容。

例如;

<DataGridTemplateColumn> 
    <DataGridTemplateColumn.CellTemplate> 
      <DataTemplate> 
       <DataGrid ItemsSource="{Binding LstBlades }"/> 
      </DataTemplate> 
    </DataGridTemplateColumn.CellTemplate> 
</DataGridTemplateColumn> 
+0

我收到一個異常項目集合必須爲空之前使用ItemsSource。 – Patrick

+0

請你詳細說明我的代碼背後的特殊情況? – Patrick

+0

它類似於http://stackoverflow.com/questions/1754608/what-is-the-code-behind-for-datagridtemplatecolumn-and-how-to-use-it但我無法適應它在我的工作情況下,只能在第3列上工作,以及如何格式化列表,如str1,str2,... – Patrick

相關問題