Autocompletebox + TransitionService = никакой радости

Я борюсь со страницей xaml в своем приложении. У меня есть прокрутка, содержащая несколько кнопок, а затем сетка ниже, содержащая поле автозаполнения. Он работает как надо. Но когда я применяю TransitionService из последнего набора инструментов Silverlight, всплывающее окно предложений автозаполнения становится «по центру», поэтому половина предложений находится «под» клавиатурой. На всех остальных страницах все работает. Сам переход работает, это просто размещение всплывающего окна из окна автозаполнения, которое становится напуганным. Я пытался удалить Scrollviewer и вместо этого использовал сетку, но происходит то же самое.

Это код для переходов:

<toolkit:TransitionService.NavigationInTransition>
    <toolkit:NavigationInTransition>
        <toolkit:NavigationInTransition.Backward>
            <toolkit:TurnstileTransition Mode="BackwardIn"/>
        </toolkit:NavigationInTransition.Backward>
        <toolkit:NavigationInTransition.Forward>
            <toolkit:TurnstileTransition Mode="ForwardIn"/>
        </toolkit:NavigationInTransition.Forward>
    </toolkit:NavigationInTransition>
</toolkit:TransitionService.NavigationInTransition>
<toolkit:TransitionService.NavigationOutTransition>
    <toolkit:NavigationOutTransition>
        <toolkit:NavigationOutTransition.Backward>
            <toolkit:TurnstileTransition Mode="BackwardOut"/>
        </toolkit:NavigationOutTransition.Backward>
        <toolkit:NavigationOutTransition.Forward>
            <toolkit:TurnstileTransition Mode="ForwardOut"/>
        </toolkit:NavigationOutTransition.Forward>
    </toolkit:NavigationOutTransition>
</toolkit:TransitionService.NavigationOutTransition>

Упрощенный код, больше кнопок в коде. И:

<ScrollViewer x:Name="ContentPanel" Grid.Row="1" VerticalScrollBarVisibility="Auto" HorizontalContentAlignment="Center" VerticalAlignment="Top" >
        <StackPanel x:Name="buttons">
            <Button Content="Vis alle navn i en liste" Name="cmdShowInList" VerticalAlignment="Top" Click="cmdShowInList_Click"></Button>                
            </StackPanel>            
    </ScrollViewer>
    <Grid x:Name="Search" Grid.Row="2" Margin="0,20,0,0">
        <toolkit:AutoCompleteBox x:Name="txtSearch" FontSize="32" Text="Search here" Width="330" HorizontalAlignment="Left" FilterMode="Custom" MouseEnter="txtSearch_MouseEnter" DropDownClosed="txtSearch_DropDownClosed">
            <toolkit:AutoCompleteBox.ItemTemplate>
                <DataTemplate>
                    <StackPanel Orientation="Horizontal">
                        <TextBlock Text="{Binding Name}" />
                    </StackPanel>
                </DataTemplate>
            </toolkit:AutoCompleteBox.ItemTemplate>
        </toolkit:AutoCompleteBox>
        <Button Name="cmdGoToName" Content="Show" Width="160" HorizontalAlignment="Right" Click="cmdGoToName_Click"></Button>
    </Grid>

Это известная проблема, или я что-то упустил?


person Svein Erik    schedule 16.12.2011    source источник
comment
Я не знаю, как работает NavigationService, но попробуйте установить ContentHorizontalAlignement для вашего всплывающего окна на Left и посмотрите, поможет ли это.   -  person MBen    schedule 16.12.2011
comment
Спасибо за подсказку, но я обнаружил, что в этой теме нет решения: stackoverflow.com/questions/5251785/   -  person Svein Erik    schedule 17.12.2011