【发布时间】:2015-01-24 05:11:58
【问题描述】:
我是 windows phone 开发的新手。我被这个问题困住了。我想通过使用绑定 Json 数据在网格内动态创建 textblock。 我的 Json 数据是:
[ {"scheme":"SCHEME A","units":1,"amount":2000,"currency":"AED","approved_date":"2014-12-19","lockState":"Locked", "id":7497,"withdrawal_request":0}, {"scheme":"SCHEME A","units":4,"amount":100000,"currency":"INR","approved_date":"2014-12-19","lockState":"Locked", "id":7543,"withdrawal_request":0} ]sample.xaml
<Grid x:Name="ContentPanel" Grid.Row="1" Margin="12,0,12,196" RenderTransformOrigin="0.5,0.98">
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="35"/>
<RowDefinition Height="35"/>
<RowDefinition Height="35"/>
<RowDefinition Height="35"/>
</Grid.RowDefinitions
<Grid.ColumnDefinitions>
<ColumnDefinition Width="250"/>
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<Grid>
<TextBlock TextWrapping="Wrap" Text="TCN" Grid.Row="0" Grid.Column="0" Name="aa" Foreground="Black" FontWeight="Bold" />
<TextBlock TextWrapping="Wrap" Text="{binding scheme}" Grid.Row="0" Grid.Column="1" Name="aa" Foreground="Black" FontWeight="Bold" />
<TextBlock TextWrapping="Wrap" Text="UNIT" Grid.Row="1" Grid.Column="0" Name="aa" Foreground="Black" FontWeight="Bold" />
<TextBlock TextWrapping="Wrap" Text="{binding unit}" Grid.Row="0" Grid.Column="1" Name="aa" Foreground="Black" FontWeight="Bold" />
</Grid>
</Grid>
</Grid>
sample.xaml.cs
{
var users = JArray.Parse(data.Result.ToString());
tcnobjects1 = new TcnObjects1 {scheme = users[0]["scheme"].ToString(), units = users[0]["units"].ToString(), amount = users[0]["amount"].ToString(), currency = users[0]["currency"].ToString(), lockState = users[0]["lockState"].ToString(), id = users[0]["id"].ToString(), withdrawal_request = users[0]["withdrawal_request"].ToString()};
ContentPanel.DataContext = tcnobjects1;
}
如何循环网格内的项目?我正在动态获取 json 数据。使用上面的代码我只能显示 Json 数组 users[0] 元素。帮助我提供示例代码.
【问题讨论】:
-
我遇到了类似的情况。对我来说,JSON.NET Documentaion 帮助了我很多 - 只需找到 newtonsoft.com/json/help/html/JsonNetVsWindowsDataJson.htm 链接,您可能会找到解决方案
标签: c# json xaml windows-phone-8