我有一个 Windows XAML 页面,它使用我的 viewmodels 构造函数从代码隐藏中包含如下地图。我想用指针在地图中显示多个位置,所以我使用的是 Windows Phone 工具包
<Controls:Map x:Name="AllyMap" Grid.Row="1" Center="{Binding GeoLocation}" ZoomLevel="12">
<toolkit:MapExtensions.Children>
<toolkit:MapItemsControl ItemsSource="{Binding MapList}">
<toolkit:MapItemsControl.ItemTemplate>
<DataTemplate>
<toolkit:Pushpin GeoCoordinate="{Binding GeoCoordinate}" Content="{Binding Content}"/>
</DataTemplate>
</toolkit:MapItemsControl.ItemTemplate>
</toolkit:MapItemsControl>
</toolkit:MapExtensions.Children>
</Controls:Map>
现在我与 MapList Itemsource 绑定如下。
atmLocationsMapView = new ATMLocationsMapViewModel();
this.DataContext = atmLocationsMapView;
ObservableCollection<DependencyObject> Mapchildren = MapExtensions.GetChildren(AllyMap);
MapItemsControl AllyMapObject;
AllyMapObject = null;
AllyMapObject = Mapchildren.FirstOrDefault(x => x.GetType() == typeof(MapItemsControl)) as MapItemsControl;
AllyMapObject.ItemsSource = atmLocationsMapView.MapList;
第一次迭代运行良好。我有一个在地图中过滤的功能。当我过滤它时,我进入"Items must be empty before using Items Source"
了上述代码的最后一行。
任何人都可以帮我解决这个问题。