【发布时间】:2015-10-21 08:16:48
【问题描述】:
考虑以下代码。
public string[][] CalculateDistance(string origin, string destination)
{
string[][] result = new string[1][];
string url = "MyUrl"
string requesturl = url;
string content = fileGetContents(requesturl);
JObject o = JObject.Parse(content);
result[0] = new string[2];
result[0][0] = (string)o.SelectToken("routes[0].legs[0].distance.text");
result[0][1] = (string)o.SelectToken("routes[0].legs[0].duration.text");
string[][] myArray = new string[2][];
for (int i = 0; i < result.Length; i++)
{
string[] innerArray = result[i];
}
return result;
}
我正在尝试返回一个锯齿状数组,然后在 wpf 应用程序的 ListView 上使用它。如果我在for 循环内使用Console.WriteLine(innerArray),我会显示正确的结果。但是,当显示在 ListView 中时,我得到了
字符串[][] 数组
谁能告诉我哪里出错了。我以前从未使用过锯齿状数组,所以我发现很难弄清楚我做错了什么。
XMAL 代码如下:
<ListView Name="MyList" HorizontalAlignment="Left" Height="315" Margin="1289,425,-435,0" VerticalAlignment="Top" Width="421">
<ListView.View>
<GridView>
<GridViewColumn Header="Name"
DisplayMemberBinding="{Binding Time}"
Width="100"/>
</GridView>
</ListView.View>
</ListView>
以及将项目添加到我使用的列表的后端:
foreach (var items in GetAddress())
{
MyList.Items.Add(new Distance() { Time = distance.CalculateDistance(items.FromPostCode, items.DestinationPostCode) });
}
距离类看起来像
public class Distance
{
public string[][] Time { get; set; }
//More properties
}
【问题讨论】:
-
请出示您的 WPF 代码。没关系,如何填充数组 - 样本数据就足够了。
-
@Dennis 更新了我的问题
-
在后面的代码中,您只需将数组添加到项目集合中。显然,
ListView调用Distance.Time.ToString()来获得项目的可视化表示。你想如何显示这个数组? -
你想如何在列表视图中显示结果
-
@Dennis 在控制台中,我的数组看起来像
7.1 mi和11 mins,我想在我的列表中显示它们,所以第一列变成英里,第二列变成分钟
标签: c# arrays wpf jagged-arrays