2015-01-24 2 views
0

У меня есть один вид, размер которого изменяется после загрузки окон. После завершения загрузки окно становится изменен, когда я нажал где-то в окне или изменить его размер:Изменение размера виджета Wpf после того, как пользователи нажимают

<Viewbox Grid.Column="0" Stretch="Fill" HorizontalAlignment="Left" VerticalAlignment="Top" Margin="5, 5, 5, 5"> 
        <Grid Background="White"> 
          <Grid.ColumnDefinitions> 
            <ColumnDefinition Width="1*" /> 
            <ColumnDefinition Width="5*" MinWidth="150" /> 
            <ColumnDefinition Width="4*" MinWidth="150" /> 
          </Grid.ColumnDefinitions> 

          <Image x:Name="ImgTwitterUserPhoto" HorizontalAlignment="Left" Grid.Column="0" MaxWidth="150" MaxHeight="150" Margin="10, 10, 10, 10" 
              VerticalAlignment="Top"/> 

          <Grid Grid.Column="1" SnapsToDevicePixels="True" Background="White"> 

            <Grid.RowDefinitions> 
              <RowDefinition Height="10*"></RowDefinition> 
              <RowDefinition Height="10*"></RowDefinition> 
              <RowDefinition Height="80*"></RowDefinition> 
            </Grid.RowDefinitions> 

            <Label x:Name="LblTwitterUserName" Content="" HorizontalAlignment="Left" 
              VerticalAlignment="Top" Grid.Row="0" 
              FontFamily="Segoe UI Light" FontSize="20"/> 
            <Label x:Name="LblTwitterUserHandle" Content="" HorizontalAlignment="Left" 
              VerticalAlignment="Top" FontSize="12" 
              FontFamily="Segoe UI Semibold" Grid.Row="1" 
              Foreground="#FF8B8888" Opacity="0.8"/> 
          </Grid> 


        </Grid> 
      </Viewbox> 
+0

Faka вы downvotter. Кажется, это багги Microsoft. – SilvioSantos666

ответ

0

Я нашел странное поведение:

В главном окне (родительский контроль) мы имеем этот вариант: SizeToContent = "WidthAndHeight"

В первом взаимодействии с пользователем основное окно гарантирует, что все ваши элементы управления будут уважать это свойство. И из-за этого элементы управления изменяются по ширине и высоте. Проблема заключается в том, что элементы управления изменяются после взаимодействия с пользователем, вероятно, потому, что соотношение сторон внутреннего контроля должно быть сохранено или что-то в окне просмотра в соответствии с его размером контейнера.

Решение должно было заменить WidthAndHeight с шириной только, поскольку изменение размера произошло из вертикального размера.

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