アプリに単純な Twitter フィードを表示しており、コンテキスト メニューに更新メソッドを実装しています。問題は、コンテキスト メニューの表示のパフォーマンスが低下することです (アイテムの数の問題ではなく、ほんの数個で発生します)。非常に長くタップ/ホールドする必要があるようで、コンテキストメニューが表示されます-スムーズなアニメーションではなく、少し衝撃があります. 理想的には、アイテムをタップしたことを即座にフィードバックし、スムーズなアニメーションでコンテキスト メニューが表示されるピープル ハブのように機能させるとよいでしょう。
私を困惑させるもう 1 つの部分は、コンテキスト メニューが表示されたときに、画面の残りの部分が「背景に縮小」して、選択した項目に注意を引くことです。これはパフォーマンスの問題と関係があるようです。繰り返しになりますが、この問題に関する理想的な行動については、ピープル ハブを参照してください。
これをより適切に実装するためのヒントはありますか?
ここに私のxamlがあります:
<!-- twitter feed-->
<controls:PivotItem Header="feed">
<ScrollViewer>
<StackPanel>
<ItemsControl ItemsSource="{Binding Tweets}">
<ItemsControl.ItemTemplate>
<DataTemplate>
<Border Padding="12">
<toolkit:ContextMenuService.ContextMenu>
<toolkit:ContextMenu >
<toolkit:MenuItem Header="refresh" Command="{Binding Main.RefreshTweetsCommand, Source={StaticResource Locator}}" />
</toolkit:ContextMenu>
</toolkit:ContextMenuService.ContextMenu>
<StackPanel Orientation="Horizontal">
<Image Source="{Binding user.profile_image_url}" Margin="0,12,0,0" Height="80" Width="80" Stretch="UniformToFill" VerticalAlignment="Top"/>
<Border Padding="12,0,0,0">
<StackPanel>
<TextBlock Text="{Binding user.name}" Foreground="Blue" FontSize="30" />
<TextBlock Text="{Binding date_created}" FontSize="16"/>
<TextBlock Text="{Binding text}" FontSize="20" TextWrapping="Wrap" Width="320" />
</StackPanel>
</Border>
</StackPanel>
</Border>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
<TextBlock Text="more . . ." FontSize="32" Padding="20">
<i:Interaction.Triggers>
<i:EventTrigger EventName="Tap">
<cmd:EventToCommand Command="{Binding MoreTweetsCommand, Mode=OneWay}"/>
</i:EventTrigger>
</i:Interaction.Triggers>
</TextBlock>
</StackPanel>
</ScrollViewer>
</controls:PivotItem>