2011-08-02 13 views
0

こんにちはイムをクリアし、私はむしろちょうどmapz.ItemsSource = App.ViewModel.LocationItemsことによってそれにアイテムをASSING例えば全ての項目recurringlyこのマップを更新mapItemsControl.Itemtemplate WP7地図

イムをリフレッシュするよりも、そのacumulating項目に気づきました。 これ以前にmapzの既存のアイテムをクリアするにはどうすればよいですか?

<my:Map x:Name="myMap" Height="480" Width="444" CredentialsProvider="NON YE BIZ" 
         Grid.ColumnSpan="1" LogoVisibility="Collapsed" CopyrightVisibility="Collapsed" Margin="5,0,10,0" VerticalContentAlignment="Top" HorizontalContentAlignment="Left" > 
        <my:MapItemsControl x:Name="mapz" ItemsSource="{Binding LocationItems}" Width="450"> 
         <my:MapItemsControl.ItemTemplate> 
          <DataTemplate> 
           <my:Pushpin Name="MyPushPin" Location="{Binding Target_Coordinate}" Content="{Binding Target_NickName}"/> 
        </DataTemplate> 
       </my:MapItemsControl.ItemTemplate> 
       </my:MapItemsControl> 
       </my:Map> 
+0

アイテムを追加/削除するヨーヨーのコードを表示してください。バインドしているコレクションのタイプは何ですか? – ColinE

答えて

2

は単にLocationItems.Clear()を呼び出します。 LocationItemsがObservableCollectionの場合、すでにレンダリングされた項目をクリアしてマップを作成します。

データバインディングを使用しているときにUIに直接アクセスする理由はありません。

2

ItemTemplateは、コントロールのルック&フィールと、一般的な動作を定義する - それがコントロール自体ではありません。したがって、テンプレートではなく、コレクションそのものを見る必要があります。既存のItemCollectionをクリアするには、あなたはこれを必要とする:

mapz.Items.Clear(); 
+0

ItemsSourceを使用する場合は、アイテムを編集に使用することはできません(読み取り専用)。このコードは例外をスローします。 – RredCat

関連する問題