2013-06-11 4 views
0

У меня есть код ниже. Я пытаюсь разместить изображение прямо справа от текстового блока в пределах границы, но изображение почти касается правой стороны экрана. Как я могу Allign изображение справа от TextBlockTextBlock и изображение внутри Dockpanel

<Border BorderBrush="#FFD6D4D4" BorderThickness="0,0,0,1" Grid.Column="0" Grid.Row="1" 
     Height="28" VerticalAlignment="Top" Background="#FFF7F7F7" 
     HorizontalAlignment="Stretch"> 
       <DockPanel LastChildFill="False"> 
        <TextBlock DockPanel.Dock="Left" 
           Style="{StaticResource HeaderTextBlockStyle}" 
           Text="Check new items" 
           VerticalAlignment="Center" Margin="2" /> 
        <Image 
         DockPanel.Dock="Left" 
         VerticalAlignment="Center"      
         SnapsToDevicePixels="True" 
         UseLayoutRounding="True" 
         RenderOptions.BitmapScalingMode="HighQuality" 
         Source="/Media/pointer.png" 
         RenderTransformOrigin="0.95,4.046" 
         HorizontalAlignment="Center" Margin="0" 
         Height="25.306" Width="25.008> 
         <Image.RenderTransform> 
          <TransformGroup> 
           <ScaleTransform/> 
           <SkewTransform/> 
           <RotateTransform Angle="49.57"/> 
           <TranslateTransform X="-39.746" Y="-21.185"/> 
          </TransformGroup> 
         </Image.RenderTransform> 
        </Image>     
       </DockPanel> 
      </Border> 

ответ

1
Try using the Grid control and define two columns into it 

    <Border BorderBrush="#FFD6D4D4" BorderThickness="0,0,0,1" Grid.Column="0" Grid.Row="1" 
      Height="28" VerticalAlignment="Top" Background="#FFF7F7F7" 
      HorizontalAlignment="Stretch"> 
        <Grid> 
<Grid.ColumnDefinitions> 
    <Column Definition Width="*"/> 
    <Column Definition Width="*"/> 
</Grid.ColumnDefinitions> 

         <TextBlock Grid.Column="0"         Style="{StaticResource HeaderTextBlockStyle}" 
            Text="Check new items" 
            VerticalAlignment="Center" Margin="2" /> 
         <Image 
          Grid.Column="1"        VerticalAlignment="Center"      
          SnapsToDevicePixels="True" 
          UseLayoutRounding="True" 
          RenderOptions.BitmapScalingMode="HighQuality" 
          Source="/Media/pointer.png" 
          RenderTransformOrigin="0.95,4.046" 
          HorizontalAlignment="Center" Margin="0" 
          Height="25.306" Width="25.008> 
          <Image.RenderTransform> 
           <TransformGroup> 
            <ScaleTransform/> 
            <SkewTransform/> 
            <RotateTransform Angle="49.57"/> 
            <TranslateTransform X="-39.746" Y="-21.185"/> 
           </TransformGroup> 
          </Image.RenderTransform> 
         </Image>     
        </Grid> 
      </Border> 
1

Попробуйте использовать StackPanel с ориентацией установить в горизонтальное положение вместо DockPanel. Это должно помещать изображение рядом с текстовым блоком.

1

, если вы все еще хотите использовать панель док попробуйте установить наценку вы хотите, на изображении, как маржа = «0,0,100,0»