【发布时间】:2014-03-30 02:33:35
【问题描述】:
我尝试添加多个图钉来映射。
这是 XAML:
<maps:Map ZoomLevel="8" Height="500" x:Name="map1" Width="415" HorizontalAlignment="Left" VerticalAlignment="Top" Margin="0,0,0,0">
<toolkit1:MapExtensions.Children>
<toolkit1:MapItemsControl x:Name="PushpinCollection">
<toolkit1:MapItemsControl.ItemTemplate>
<DataTemplate>
<toolkit1:Pushpin GeoCoordinate="{Binding Coords}" Content="{Binding Name}"/>
</DataTemplate>
</toolkit1:MapItemsControl.ItemTemplate>
</toolkit1:MapItemsControl>
</toolkit1:MapExtensions.Children>
</maps:Map>
代码如下:
protected override async void OnNavigatedTo(NavigationEventArgs e)
{
base.OnNavigatedTo(e);
var xmlDataSource = new XmlDataSource();
var sigCol = new SignalCollection(xmlDataSource);
var allSignals = await sigCol.GetData(false, false, "UA");
ObservableCollection<IssueDescription> signalsWithCoords = new ObservableCollection<IssueDescription>();
foreach (var signal in allSignals)
{
if (signal.Coords != null)
{
signalsWithCoords.Add(signal);
}
}
PushpinCollection.ItemsSource = signalsWithCoords;
}
但是最后一个字符串抛出 NullReferenceException。怎么了?
【问题讨论】:
-
您是否尝试过调试并查看异常究竟是在哪里引发的以及您的变量的内容是什么?
-
@Romasz,你能告诉我我应该怎么做才能找到引发异常的地方吗?顺便说一句,signalsWithCoords 变量不为空,它包含 193 个元素。
-
我发现 PushpinCollection 为空,它抛出异常。但是为什么会这样呢? PushpinCollection 是 XAML 中 MapItemsControl 的 x:Name。
标签: c# xaml windows-phone-8