2016-08-12 2 views
1

У меня есть следующий код:Странное поведение ScrollViewer в TabControl

<Window x:Class="WpfApplication5.MainWindow" 
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
    xmlns:d="http://schemas.microsoft.com/expression/blend/2008" 
    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
    xmlns:local="clr-namespace:WpfApplication5" 
    mc:Ignorable="d" 
    Title="MainWindow" Height="350" Width="525"> 
<Grid> 
    <TabControl> 
     <TabControl.Items> 
      <TabItem> 
       <TabItem.Header>tabItem1</TabItem.Header> 
       <TabItem.Content> 
        <ScrollViewer HorizontalScrollBarVisibility="Disabled"> 
         <WrapPanel> 
          <Image Source="RentgenogramOfWrist.jpg" Width="500"></Image> 
          <Button Width="300" Height="300"/> 
         </WrapPanel> 
        </ScrollViewer> 
       </TabItem.Content> 
      </TabItem> 
      <TabItem> 
       <TabItem.Header>tabItem2</TabItem.Header> 
       <TabItem.Content> 
        <ScrollViewer HorizontalScrollBarVisibility="Disabled"> 
         <WrapPanel> 
          <Image Source="RentgenogramOfWrist.jpg" Width="500"></Image> 
          <Button Width="300" Height="300"/> 
         </WrapPanel> 
        </ScrollViewer> 
       </TabItem.Content> 
      </TabItem> 
     </TabControl.Items> 
    </TabControl> 
</Grid> 

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

ответ

1

Недвижимость true by default, поэтому ScrollViewer прокручивает, чтобы сфокусировать кнопку.

Set

<Button Width="300" Height="300" Focusable="False"/> 

для одного из них и посмотреть, какие изменения.

Смежные вопросы