2017-09-26 5 views
0

Ich möchte den Zustand in Blend für Visual Studio aufnehmen, aber wenn ich die Größe des Fensters (Grid und Tab Control) für einen Zustand ändere, wird der gesamte Inhalt verzerrt. Wenn ich nicht aufzeichne, verhält es sich normal.Die Größenänderung des wpf-Fensters verzerrt während der Aufzeichnung die wpf-Komponenten

enter image description here Grundzustand Form

enter image description here Dies ist, was, wenn ich geschieht

Hier die Größe ist XAML-Code

<Window x:Name="window" x:Class="WpfApp2.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:WpfApp2" 
    mc:Ignorable="d" 
    Title="MainWindow" Height="208" Width="220"> 

<Grid x:Name="grid" HorizontalAlignment="Left" Width="213" Margin="0,0,-1,0" RenderTransformOrigin="0.5,0.5"> 

    <Grid.RenderTransform> 
     <TransformGroup> 
      <ScaleTransform/> 
      <SkewTransform/> 
      <RotateTransform/> 
      <TranslateTransform/> 
     </TransformGroup> 
    </Grid.RenderTransform> 

    <VisualStateManager.VisualStateGroups> 
     <VisualStateGroup x:Name="VisualStateGroup"> 
      <VisualStateGroup.Transitions> 
       <VisualTransition From="big" GeneratedDuration="0:0:1"/> 
      </VisualStateGroup.Transitions> 
      <VisualState x:Name="big"> 
       <Storyboard> 
        <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(FrameworkElement.Width)" Storyboard.TargetName="window"> 
         <EasingDoubleKeyFrame KeyTime="0" Value="339"/> 
        </DoubleAnimationUsingKeyFrames> 
        <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.RenderTransform).(TransformGroup.Children)[0].(ScaleTransform.ScaleX)" Storyboard.TargetName="grid"> 
         <EasingDoubleKeyFrame KeyTime="0" Value="1.549"/> 
        </DoubleAnimationUsingKeyFrames> 
        <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.RenderTransform).(TransformGroup.Children)[3].(TranslateTransform.X)" Storyboard.TargetName="grid"> 
         <EasingDoubleKeyFrame KeyTime="0" Value="58.5"/> 
        </DoubleAnimationUsingKeyFrames> 
        <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.RenderTransform).(TransformGroup.Children)[0].(ScaleTransform.ScaleX)" Storyboard.TargetName="tabControl"> 
         <EasingDoubleKeyFrame KeyTime="0" Value="1.33"/> 
        </DoubleAnimationUsingKeyFrames> 
        <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.RenderTransform).(TransformGroup.Children)[3].(TranslateTransform.X)" Storyboard.TargetName="tabControl"> 
         <EasingDoubleKeyFrame KeyTime="0" Value="35.184"/> 
        </DoubleAnimationUsingKeyFrames> 
       </Storyboard> 
      </VisualState> 
     </VisualStateGroup> 
    </VisualStateManager.VisualStateGroups> 

    <TabControl x:Name="tabControl" SelectionChanged="changes" Height="177" VerticalAlignment="Top" RenderTransformOrigin="0.5,0.5"> 

     <TabControl.RenderTransform> 
      <TransformGroup> 
       <ScaleTransform/> 
       <SkewTransform/> 
       <RotateTransform/> 
       <TranslateTransform/> 
      </TransformGroup> 
     </TabControl.RenderTransform> 

     <TabItem Header="TabItem" Name="tab1"> 
      <TextBlock HorizontalAlignment="Center" TextWrapping="Wrap" VerticalAlignment="Center" Width="163.126" Height="55.88" Text="apple cat bol dog gellephant this is sample only"/> 

     </TabItem> 
     <TabItem Header="TabItem" Name="tab2"> 
     </TabItem> 
    </TabControl> 

</Grid> 

Bitte helfen. Jede Hilfe würde sehr geschätzt werden.

+1

Sie können alt + printscreen verwenden, um einen Screenshot nur des fokussierten Fensters zu erstellen, oder verwenden Sie oder mspaint zum Zuschneiden. Niemand braucht zwei riesige Screenshots einer IDE mit einem winzigen Fenster davor. Auf meinem Handy kann ich die beiden nicht unterscheiden. –

+0

Das war nur, um eine Vorstellung von dem zu geben, was vor sich geht. Aber ich werde das beim nächsten Mal im Hinterkopf behalten. Entschuldigung, –

+0

_ "Ich möchte den Zustand in Blend aufnehmen" _ - bitte etwas genauer. Wie genau "nimmst du den Zustand in Blend auf"? Was machst du genau? –

Antwort

0

Ich fand die Antwort selbst.

statt

<DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.RenderTransform).(TransformGroup.Children)[0].(ScaleTransform.ScaleX)" Storyboard.TargetName="grid"> 
        <EasingDoubleKeyFrame KeyTime="0" Value="1.549"/> 
</DoubleAnimationUsingKeyFrames> 

hatte ich

<DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(FrameworkElement.Width)" Storyboard.TargetName="grid"> 
         <EasingDoubleKeyFrame KeyTime="0" Value="909"/> 
</DoubleAnimationUsingKeyFrames> 

verwenden ich mit Framework statt UIElements arbeiten musste.

Verwandte Themen