【发布时间】:2017-06-05 19:10:17
【问题描述】:
在 Visual Studio 通用 Windows 应用程序中,我试图将 JArray 绑定到 Listview。它似乎编译得很好,并且行数填充到 Listview 但没有数据填充行。我在这里做错了什么,或者这甚至可能吗?
使用 Newtonsoft.Json.Linq;
XAML
<ListView Grid.Row="0" x:Name="lstJobData">
<ListView.ItemTemplate>
<DataTemplate>
<Grid Margin="8">
<Grid.RowDefinitions>
<RowDefinition Height="*"/>
<RowDefinition Height="*"/>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<TextBlock Grid.Row="0" Text="{Binding Path=job_id}" FontSize="14" Foreground="White"/>
<TextBlock Grid.Row="1" Text="{Binding Path=job_number}" FontSize="14" Foreground="White"/>
<TextBlock Grid.Row="2" Text="{Binding Path=ship_type}" FontSize="14" Foreground="White"/>
</Grid>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
Service层的JArray(从Json字符串转换为Jarray)
{[
{ "job_id": 399783, "job_number": "XYZ-J111111", "ship_type": "c" },
{ "job_id": 445672, "job_number": "XYZ-J222222", "ship_type": "p" },
{ "job_id": 896543, "job_number": "XYZ-J333333", "ship_type": "f" }
]}
XAML(代码隐藏)
private async void Button1_Click(object sender, RoutedEventArgs e)
{
MyServices.Service1Client client = new MyServices.Service1Client();
var itemSource = await client.GetDTAsync();
JArray result = JArray.Parse(itemSource);
lstJobData.ItemsSource = result;
}
【问题讨论】:
-
您提供的json不正确
-
另外,请添加
JArrayclass
标签: c# json listview uwp win-universal-app