数据从JSON响应绑定到Listbox

本文关键字:Listbox 绑定 响应 JSON 数据 | 更新日期: 2023-09-27 18:08:41

这是我第一次做xaml,所以请理解我可能学得比较慢

下面是我的CS代码。我正在尝试将"attributes"绑定到列表框。

public DirectionPage()
    {
        InitializeComponent();
        List<Feature> features = App.dResult.directions[0].features;
        foreach (Feature f in features)
        {
            Attributes a = f.attributes;
            MessageBox.Show(a.text);
        }
    }
    public ObservableCollection<Feature> test = new ObservableCollection<Feature>();

下面是XAML代码

 <ListBox x:Name="directionListBox" ItemsSource="{Binding}" >
            <ListBox.ItemTemplate>
                <DataTemplate>
                    <StackPanel Orientation="Vertical">
                        <TextBlock Text="{Binding text}" Style="{StaticResource PhoneTextTitle2Style}" />
                    </StackPanel>
                </DataTemplate>
            </ListBox.ItemTemplate>
        </ListBox>

数据从JSON响应绑定到Listbox

我没有看到属性集合。也许你能做的是收集列表中的属性,可能是你的test,并把它放在竞标中。

或者将Features集合作为列表框的itemsource。例如

public DirectionPage()
    {
        InitializeComponent();
        List<Attributes> LAtributes=new List<Attributes>();
        List<Feature> features = App.dResult.directions[0].features;
        foreach (Feature f in features)
        {
            Attributes a=new Attributes();
            a = f.attributes;
            LAttributes.add(a);
            MessageBox.Show(a.text);
        }
       directionListBox.ItemsSource=Lattribute;
    }

<ListBox x:Name="directionListBox" ItemsSource="{Binding}" >
            <ListBox.ItemTemplate>
                <DataTemplate>
                    <StackPanel Orientation="Vertical">
                        <TextBlock Text="{Binding Path=text}" Style="{StaticResource PhoneTextTitle2Style}" />
                    </StackPanel>
                </DataTemplate>
            </ListBox.ItemTemplate>
        </ListBox>

希望这对你有帮助!