2011-03-22 48 views
2

我有一個具有嵌套對象集合的對象集合。我想要我的數據網格中的嵌套集合水平顯示內嵌的數據網格,如果這是可能的話。這裏是我的課:Silverlight 4 DataGrid如何使嵌套的數據網格數據水平顯示而不是垂直

public class Details 
{ 
    public string Customer {get;set;} 
    public List<Type> Types { get; set;} 
} 
public class Type 
{ 
    public string typeId{get;set;} 
} 

當然,他們是真正ObservableCollections,我實現INotifyPropertyChange,但這只是我的課的快速骨架抓住要點在那裏。

這將是很好,如果我可以把它顯示是這樣的:

Details Customer  
        Types[0] typeId Types[1] typeId .... Types[n] typeId 

我希望這是有意義的。基本上對於我想要id水平顯示的類型。那麼我怎樣才能讓Types集合顯示爲列而不是行?我基本上想要添加另一個集合來鍵入並嵌套數據網格,但這些集合不需要是水平的,就是這個。任何幫助將不勝感激。提前致謝。

回答

0

的RowDetailsTemplate可能在這裏工作:

<DataGrid> 
    <DataGrid.RowDetailsTemplate> 
     <DataTemplate> 
      <xzy /> 
     </DataTemplate> 
    </DataGrid.RowDetailsTemplate> 
</DataGrid> 

<xyz />那麼,您可以水平顯示你的類型的一部分。根據您的需要,您可以創建一個UserControl(創建一個public IEnumerable<Type> Types { get; set; },將您的Types成員綁定到它並在那裏實現顯示邏輯),一個StackPanel或一個簡單的TextBlock,您可以在其中連接類型名稱。

+0

你的意思是這樣的工作,像添加一個列表框到模板中,就像這個例子顯示的那樣,顯示一個列表框橫向嗎? http://stackoverflow.com/questions/4978407/how-to-display-items-horizo​​ntally-in-a-listbox-control – pqsk 2011-07-13 18:07:51

相關問題