在WPF

2010-11-16 27 views
0

縮放圖片我設法讓圖像縮放,我創建的風格,這裏是:在WPF

<Style x:Key="ZoomImage" TargetType="{x:Type Image}"> 
    <Style.Triggers> 
     <Trigger Property="IsMouseOver" Value="True"> 
      <Setter Property="LayoutTransform"> 
       <Setter.Value> 
        <ScaleTransform ScaleX="1.5" ScaleY="1.5"/> 
       </Setter.Value> 
      </Setter> 
     </Trigger> 
    </Style.Triggers> 
</Style> 

,我在窗口應用此風格:

<Grid Name="RootGrid" Margin="4,4,4,4"> 
    <Grid.ColumnDefinitions> 
     <ColumnDefinition Width="130"></ColumnDefinition> 
     <ColumnDefinition Width="*"></ColumnDefinition> 
    </Grid.ColumnDefinitions> 

    <Grid Name="InfoGrid" Grid.Column="0" Margin="4,4,4,4"> 
     <Grid.RowDefinitions> 
      <RowDefinition Height="150"></RowDefinition> 
      <RowDefinition Height="*"></RowDefinition> 
      <RowDefinition Height="150"></RowDefinition> 
     </Grid.RowDefinitions> 

     <StackPanel Name="UserPanel" Grid.Row="0" Margin="4,4,4,4"> 
      <Border BorderThickness="1" 
        BorderBrush="Black" 
        Margin="1,1,1,1" 
        Background="WhiteSmoke"> 

       <Image Name="UserImage" 
       <!--Apply style --> 
       Style="{StaticResource ZoomImage}" 
       Margin="4,4,4,4"> 
       <Image.Source> 
        <MultiBinding Converter="{StaticResource imageConvertor}"> 
         <Binding Path="ProfilePhoto"/> 
         <Binding Path="Status" UpdateSourceTrigger="PropertyChanged"/> 
        </MultiBinding> 
       </Image.Source> 
      </Image> 

     </Border> 
    </StackPanel> 
</Grid> 

但就是不使o變焦,在哪裏可以解決問題?

我用蓋伊進步:

<Trigger Property="IsHitTestVisible" Value="True"> 
    <Setter Property="LayoutTransform"> 
     <Setter.Value> 
      <ScaleTransform ScaleX="1.5" ScaleY="1.5"/> 
     </Setter.Value> 
    </Setter> 
</Trigger> 

,但圖像沒有變焦時,如果鼠標已經結束。

回答

0

該圖像不是默認情況下在圖像中打擊測試可見 - IsHitTestVisible =「True」,或者等效的setter可以完成這項工作。

+0

我認爲IsHitTestVisible不起作用。 – 2010-11-16 16:25:51

+0

我認爲他的意思是將'IsHitTestVisible'設置爲'Image'的屬性,而不是觸發屬性。你可以在你的「ZoomImage」樣式中添加'' – 2010-11-16 16:39:49

+0

是的,這就是正確的阿爾法鼠標。如果在我的答案中沒有明確表示道歉 – Guy 2010-11-16 16:46:29