将代码数据绑定到XAML数据透视列表框

本文关键字:透视 列表 数据 XAML 代码 数据绑定 | 更新日期: 2023-09-27 18:13:20

我正在为Windows Phone 7.1的数据绑定而挣扎。我有一个DataLoader类与ItemList(自定义类)的OnservableCollection作为属性。因此,每个pivot项目都有自己的项目列表。在这个DataLoader中,我从JSON中加载数据。到目前为止,一切顺利。

public ObservableCollection<ItemList> PivotItem { get; set; }

在这里,我存储了5个ItemList,一个用于每个pivot标头及其相应的项列表。

但我的问题是,我想绑定这些数据到XAML与ListBox在每个透视项。

<phone:Pivot Title="iMetrópolis" Loaded="Pivot_Loaded">
        <!--Elemento Pivot 1-->
        <phone:PivotItem 
            x:Uid="PivotItem1"
            Header="Todo" Margin="14,10,10,18">
            <ListBox x:Name="FirstListBox" ItemsSource="{Binding Items}">
                <ListBox.ItemTemplate>
                    <DataTemplate>
                        <StackPanel Margin="0,0,0,17" Width="432" Height="78">
                        // I want to add textboxes binding my data
                        </StackPanel>
                    </DataTemplate>
                </ListBox.ItemTemplate>
            </ListBox>
        </phone:PivotItem>
        .
        .
        .

谢谢你的回复!

将代码数据绑定到XAML数据透视列表框

这是我认为你需要做的,一个关于数据绑定的例子

        <ListBox x:Name="listBox1">
            <ListBox.ItemTemplate>
                <DataTemplate>
                    <StackPanel Height="auto" >
                        <TextBlock Text="{Binding PON}"  />
                        <TextBlock Text="{Binding PIN}" />
                    </StackPanel>
                </DataTemplate>
            </ListBox.ItemTemplate>
        </ListBox>

和它的类

   public class ListObject
    {
        public string PON { get; set; }
        public string PIN { get; set; }
    }

和从json中绑定真实数据

     dynamic json = JsonConvert.DeserializeObject(jsondata);
     var questions = new List<ListObject>();
      foreach (var abc in json["jsonarray"])
                {
     var listOfItems = new ListObject();
listOfItems.PON= abc.object1;
listOfItems.PIN= abc.object2;
 questions.Add(listOfQuestions);
}
  listBox1.ItemsSource = questions;

我希望它有助于回复任何评论