首先上一个例子:
<Grid Name="grid" Margin="5">
<ListBox>
<ListBoxItem Content="asdasd"/>
<ListBoxItem Content="asdasd"/>
<ListBoxItem Content="asdasd"/>
<ListBoxItem Content="asdasd"/>
<ListBoxItem Content="asdasd"/>
<ListBoxItem Content="asdasd"/>
<ListBox.ContextMenu>
<ContextMenu>
<MenuItem Header="123123"/>
<MenuItem Header="123123"/>
<MenuItem Header="123123"/>
<MenuItem Header="123123"/>
<MenuItem Header="123123"/>
<MenuItem Header="123123"/>
<MenuItem Header="123123"/>
<MenuItem Header="123123"/>
<MenuItem Header="123123"/>
<MenuItem Header="123123"/>
</ContextMenu>
</ListBox.ContextMenu>
</ListBox>
</Grid>
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
这段代码运行后,在对应控件上快速并多次右键显示菜单,如果机器的性能不够好,会出现闪烁的情况。
解决方案:
在App.xaml加上一句话:
<PopupAnimation x:Key="{x:Static SystemParameters.MenuPopupAnimationKey}">None</PopupAnimation>
- 1