WP7 - Drag & Drop с вложенными макетами - PullRequest
2 голосов
/ 12 февраля 2012

У меня есть дизайн страницы следующим образом:

enter image description here

Макет выглядит следующим образом:

<ScrollViewer Margin="0" HorizontalAlignment="Left" Height="360" VerticalAlignment="Bottom">
    <StackPanel x:Name="spQueuedWeapons" HorizontalAlignment="Left" VerticalAlignment="Bottom">
        <ItemsControl ItemsSource="{Binding QueuedCombinations}" HorizontalAlignment="Left">
            <ItemsControl.ItemTemplate>
                <DataTemplate>
                    <Image Source="{Binding ImageName}">
                        <i:Interaction.Behaviors>
                            <ex:MouseDragElementBehavior ConstrainToParentBounds="False" />
                        </i:Interaction.Behaviors>
                    </Image>
                </DataTemplate>
            </ItemsControl.ItemTemplate>
        </ItemsControl> 
    </StackPanel>
</ScrollViewer>

Проблема, с которой я сталкиваюсь, заключается в том, что MouseDragElementBehavior кажется визуально ограниченным границами ScrollViewer. Я хочу, чтобы можно было перетаскивать зеленые прямоугольники на синюю цель падения.

До сих пор я думал только о том, чтобы удалить содержащий ScrollViewer или программно имитировать макет StackPanel. Я бы не стал добавлять ручную прокрутку на основе кнопок или программный макет, если это возможно.

У кого-нибудь есть идеи?

...