MapsItemControl を含む Map コントロールがあります。
<maps:Map x:Name="MyMap">
<maptk:MapExtensions.Children>
<maptk:MapItemsControl>
<maptk:MapItemsControl.ItemTemplate>
<DataTemplate>
. . .
</DataTemplate>
</maptk:MapItemsControl.ItemTemplate>
</maptk:MapItemsControl>
</maptk:MapExtensions.Children>
</maps:Map>
MapItemsControl
次の方法でコードに入力します。
var itemCollection = MapExtensions.GetChildren((Map)MyMap).OfType<MapItemsControl>().FirstOrDefault();
itemCollection.ItemsSource = myItemCollection;
これは、アイテムを初めてマップに追加するときに正しく機能します。しかし、新しいソース アイテム コレクションで更新したい場合は、次のエラーが表示されitemCollection.ItemsSource = myItemCollection;
ます。
アイテム ソースを使用する前に、アイテムを空にする必要があります
そのため、ソースを再度設定する前に項目を削除するために、コードに行を追加してみましたが、成功しませんでした:
var itemCollection = MapExtensions.GetChildren((Map)MyMap).OfType<MapItemsControl>().FirstOrDefault();
itemCollection.Items.Clear();
itemCollection.ItemsSource = myItemCollection;
今、私は次の例外を受け取りますitemCollection.Items.Clear();
:
コレクションは書き込み不可モードです
の項目を更新するにはどうすればよいMapItemsControl
ですか?