Изменение контекстного меню в Windows Phone - PullRequest
1 голос
/ 28 февраля 2012

Элемент управления контекстного меню, который является частью инструментария при использовании внутри приложения, задержка до появления меню слишком велика. Это намного больше, чем обычная задержка, наблюдаемая в стандартном приложении для телефона. Есть ли способ контролировать эту задержку?

Ответы [ 2 ]

0 голосов
/ 21 марта 2014

Я вижу ту же проблему.Мне пришлось отключить ZoomEnabled, чтобы он быстрее появлялся.По сути, с ZoomEnabled вы удерживаете элемент, с которым связано меню, и у него уходит всего 2 секунды, чтобы он просто появился.Анимация не происходит, она просто появляется мгновенно, а все остальное за ней масштабируется назад.Это закрывается с анимацией, хотя.Это анимация открытия, которая полностью сломана.Я думаю, это объясняет задержку в 2 секунды.Это задержка анимации, за исключением того, что мы ее не видим.

Если для isZoomEnabled установлено значение false, он снова будет работать правильно, только если вы потеряете изящную анимацию и масштабирование.

 <toolkit:ContextMenuService.ContextMenu>
                                                        <toolkit:ContextMenu IsZoomEnabled="False"  >
                                                            <toolkit:MenuItem Header="{Binding Converter={StaticResource LocalizedBinder}, ConverterParameter='Edit'}" IsEnabled="{Binding EditCommentGridVisibility}" Click="EditComment_Click" Tag="{Binding commentId}" />
                                                            <toolkit:MenuItem Header="{Binding Converter={StaticResource LocalizedBinder}, ConverterParameter='Remove'}" IsEnabled="{Binding RemoveCommentGridVisibility}" Click="DeleteComment_Click" Tag="{Binding commentId}" />
                                                        </toolkit:ContextMenu>
</toolkit:ContextMenuService.ContextMenu>
0 голосов
/ 28 февраля 2012

К сожалению, в инструментарии нет свойства или метода для определения этой продолжительности. Исходный код, кажется, использует 0.42 секунд. Вы можете восстановить его, используя другое значение. (Хотя вам придется взглянуть на MS-PL и следовать ей.) лицензия .

...