2015-04-02 125 views
0

我有以下類結構。WPF - 使用嵌套類的XAML綁定

class A 
{ 
    List<B> B = new List<B>(); 
} 

class B 
{ 
    List<C> C = new List<C>(); 
} 
class C 
{ 
} 

我正在關注MVVM模式。我在我的視圖模型中創建了一個從類A的對象創建的Observable集合。 我需要將它綁定到我的視圖(WPF),如下所示。

 Header 1 (class A) * Item 1 (class C) 
           * Item 2 (class C) 
           * Item 3 (class C) 
           * Item 1 (class C) 

     Header 2 (class A) * Item 1 (class C) 
           * Item 2 (class C) 
           * Item 3 (class C) 
           * Item 4 (class C) 

這是可能的嗎?如果是這樣,有人可以幫我把它與視圖綁定嗎?實際上,改變類結構是不可能的。不幸的是,這樣做是必須的。

回答

0

首先,你必須利用它的屬性:

public class A 
{ 
    List<B> B = new List<B>() { get; set; } 
} 

public class B 
{ 
    List<C> C = new List<C>() { get; set; } 
} 

public class C 
{ 
} 

之後,你就可以在視圖中生成你想看到每個C視圖創建ItemsControl。有關ItemsControl的更多信息,我轉發你到MSDN(我不打算創建整個應用程序:https://msdn.microsoft.com/en-us/library/system.windows.controls.itemscontrol%28v=vs.110%29.aspx

在你的情況下,你需要兩個itemcontrols,一個用於你的B對象,一個用於你的C -objects。

+0

Thank you!It works :) – 2015-04-06 10:51:56