Mam kontroli mapa z MapsItemControl w nim:„Rzeczy musi być pusty przed użyciem przedmioty Source” podczas aktualizowania MapItemsControl.ItemsSource
<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>
ja zapełnić MapItemsControl
w kodzie następujący sposób:
var itemCollection = MapExtensions.GetChildren((Map)MyMap).OfType<MapItemsControl>().FirstOrDefault();
itemCollection.ItemsSource = myItemCollection;
Działa to poprawnie przy dodawaniu elementów do mapy po raz pierwszy. Ale jeśli chcę zaktualizować go z nową kolekcją poz soruce, pojawia się następujący błąd w itemCollection.ItemsSource = myItemCollection;
line:
Items must be empty before using Items Source
Tak, próbowałem przez dodanie odpowiedniego wiersza do mojego kodu, w celu usunięcia pozycji przed ustawieniem ponownie źródło, ale bez powodzenia:
var itemCollection = MapExtensions.GetChildren((Map)MyMap).OfType<MapItemsControl>().FirstOrDefault();
itemCollection.Items.Clear();
itemCollection.ItemsSource = myItemCollection;
teraz mogę folowing wyjątek w linii itemCollection.Items.Clear();
:
Collection is in non writeable mode
Jak mogę zaktualizować elementy w MapItemsControl
?
Czy dodawanie elementów ręcznie w pewnym momencie? Używając 'itemCollection.Add (...)'? –
@KooKiz nie, nie jestem. – anderZubi