1

SelectionChanged イベントを持つ ListPicker があります。明らかに、選択を変更したときにのみ SelectionChange イベントを発生させたいのですが、私の場合は、ページをロードするたびに発生しています。

コード:

<toolkit:ListPicker x:Name="sightingTypesPicker" ItemsSource="{Binding sightingTypes, ElementName=this}" SelectionChanged="sightingTypesPicker_SelectionChanged">
   <toolkit:ListPicker.ItemTemplate>
      <DataTemplate>
         <StackPanel>
            <TextBlock Text="{Binding Name}" FontSize="{StaticResource PhoneFontSizeSmall}"/>
         </StackPanel>
      </DataTemplate>
   </toolkit:ListPicker.ItemTemplate>
   <toolkit:ListPicker.FullModeItemTemplate>
      <DataTemplate>
         <StackPanel>
            <TextBlock Text="{Binding Name}" FontSize="{StaticResource PhoneFontSizeLarge}"/>
            <TextBlock Visibility="Collapsed" Text="{Binding TypeId}" FontSize="{StaticResource PhoneFontSizeSmall}"/>
         </StackPanel>
      </DataTemplate>
   </toolkit:ListPicker.FullModeItemTemplate>
</toolkit:ListPicker>

C#:

private void sightingTypesPicker_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
    SightingType selecteditem = e.AddedItems[0] as SightingType;
    Sighting.Instance.TypeId = selecteditem.TypeID;
}
4

2 に答える 2