Контекстное меню Windows Phone смещено и продублировано - PullRequest
0 голосов
/ 31 августа 2011

Я пишу приложение WP7.

Имеет элемент управления панорамой в качестве корневого элемента. Один из элементов панорамы имеет LongListSelector для отображения списка AudioRecords.

В настоящее время я пытаюсь добавить функциональность ContextMenu к элементам списка. Я хочу, чтобы контекстное меню отображалось при нажатии элемента списка.

Вот что я получаю:

Context menu problems

Проблема 1: По-видимому, всякий раз, когда IsZoomEnabled в ContextMenu, в момент, когда контекстное меню становится видимым, оно создает обрезанное всплывающее окно с тем же внешним видом, что и элемент invoker, и размещает его поверх смещения. Моя проблема в том, что исходное изображение не скрывается. Кроме того, это всплывающее окно не прозрачно, поэтому оно перекрывает заголовок моей группы. Я хочу по-прежнему иметь функцию масштабирования, просто сделайте так, как она работает в других приложениях. Что может быть причиной такой проблемы?

Проблема 2: Само контекстное меню появляется до самого конца. Мне нужно, чтобы он отображался рядом с вызывающим элементом, как, например, в Центре пользователей.

Есть идеи, как решить эти две проблемы? Заранее спасибо.

P.S. на всякий случай наценка на этот предмет:

<StackPanel Utilities:TiltEffect.IsTiltEnabled="True">
            <toolkit:GestureService.GestureListener>
                <toolkit:GestureListener Tap="GestureListener_Tap" />
            </toolkit:GestureService.GestureListener>
            <toolkit:ContextMenuService.ContextMenu>
                <toolkit:ContextMenu>
                    <toolkit:MenuItem Header="item1" />
                    <toolkit:MenuItem Header="item2" />
                    <toolkit:MenuItem Header="item3" />
                </toolkit:ContextMenu>
            </toolkit:ContextMenuService.ContextMenu>
            <TextBlock Text="{Binding ThoughtName}" TextWrapping="Wrap" Style="{StaticResource PhoneTextExtraLargeStyle}" Margin="9,0,12,0" />
            <StackPanel Orientation="Horizontal">
                <TextBlock Text="Width:" TextWrapping="Wrap" Margin="12,-6,0,0" Style="{StaticResource PhoneTextSubtleStyle}"/>
                <TextBlock Text="{Binding RecordLengthText}" TextWrapping="Wrap" Margin="3,-6,12,0" Style="{StaticResource PhoneTextSubtleStyle}"/>
            </StackPanel>
            <StackPanel Orientation="Horizontal" Margin="0,6,0,0">
                <TextBlock Text="Caught on:" TextWrapping="Wrap" Margin="12,-6,0,0" Style="{StaticResource PhoneTextSubtleStyle}"/>
                <TextBlock Text="{Binding DateRecordedText}" TextWrapping="Wrap" Margin="3,-6,12,0" Style="{StaticResource PhoneTextSubtleStyle}"/>
            </StackPanel>
        </StackPanel>

1 Ответ

0 голосов
/ 25 октября 2011

Я столкнулся с той же проблемой 1. Но она уже была исправлена ​​в последней версии Windows Phone Toolkit за август (кстати, это для Windows Phone Mango). Вы можете скачать и использовать последнюю версию, чтобы увидеть, будет ли устранена проблема.

А что касается проблемы 2, боюсь, я еще не знаю.

...