我在我的應用程序中顯示一個簡單的Twitter飼料,我已經在上下文菜單中實現了刷新方法。問題在於顯示上下文菜單效果不佳(這不是物品數量的問題,只發生在少數情況下)。似乎我需要點擊/保持超長時間,然後出現上下文菜單 - 不是平滑的動畫,而是一個顛簸。 理想情況下,讓它具有更好的性能表現,就像人們的樞紐那裏有即時反饋,你已經點擊了該項目,然後上下文菜單出現在平滑動畫中。表現不佳的上下文菜單
這使我感到困惑的另一部分是當上下文菜單確實出現時,屏幕的其餘部分排序爲「縮小到背景」以引起對所選項目的注意。這似乎與perf性能問題有關。再次,在這個問題上尋找人羣中心的理想行爲。
有關如何更好地實現這一點的任何提示?
這裏是我的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>
哇,設置IsZoomEnabled = false確實幫助了性能。謝謝! – earthling 2012-04-11 17:27:45