2015-11-19 3 views
1

Вот мой код для привязки данных к списку, неспособный привязать данные к внутреннему списку, написанному в приложении Windows Store.Как связать данные с внутренним списком в приложениях Windows Store

Пожалуйста, проверьте, нет ли в прикрепленном изображении.

ManiPage.xaml.cs:

enter image description here

public class testchild 
{ 
    public string data { get; set; } 
} 

public class Test 
    { 
    public string id { get; set; } 
    public string name { get; set; } 
    public List<testchild> list { get; set; } 
    } 

    List<Test> listoftest = new List<Test>() 
     { 
      new Test() 
      { 
       id = "4218", 
       name = "srujana", 
       list = new List<testchild>() 
       { 
        new testchild() 
        { 
         data = "hello" 
        } 
       } 
}, 
    new Test() 
{ 
id = "c7110", 
name = "chandu", 
list = new List<testchild>() 
       { 
        new testchild() 
        { 
         data = "hello" 
        } 
       } 
    } 
     }; 
     lstbx.ItemsSource = listoftest; 

XAML:

<ListView Height="300" Width="300" Name="lstbx"> 
     <ListView.ItemTemplate> 
      <DataTemplate> 
       <StackPanel> 
        <TextBlock Text="{Binding id}"/> 
        <TextBlock Text="{Binding name}"/> 
        <ListView ItemsSource="{Binding list}"> 
         <TextBlock Text="{Binding data}"/> 
        </ListView> 
       </StackPanel> 
      </DataTemplate> 
     </ListView.ItemTemplate> 
    </ListView> 

ответ

0

Вы были близки к правильному ответу уже, вам просто нужно поставить внутреннюю TextBlock в ItemTemplate, также, как и для внешнего ListView.

<ListView Height="300" Width="300" Name="lstbx"> 
    <ListView.ItemTemplate> 
     <DataTemplate> 
      <StackPanel> 
       <TextBlock Text="{Binding id}"/> 
       <TextBlock Text="{Binding name}"/> 
       <ListView ItemsSource="{Binding list}"> 
        <ListView.ItemTemplate> 
         <DataTemplate> 
          <TextBlock Text="{Binding data}"/> 
         </DataTemplate> 
        </ListView.ItemTemplate> 
       </ListView> 
      </StackPanel> 
     </DataTemplate> 
    </ListView.ItemTemplate> 
</ListView> 

Это приводит к:

enter image description here

Смежные вопросы