2012-05-16 36 views
0

我正在加载HyperlinkBut​​ton中的图像的Windows Phone 7应用程序。这样做效果很好,除了Stretch="Uniform"之外,当它不是完全正方形时,会在图像周围形成空白区域。有没有办法让这个透明?WP7/WPF图像拉伸时的空白区域=“统一”

White space around image

<HyperlinkButton NavigateUri="{Binding Id, StringFormat='{}/x;component/Pages/FullScreenImage.xaml?id={0}'}" 
        Grid.Column="0" Grid.Row="0" 
        toolkit:TiltEffect.IsTiltEnabled="True" Background="Transparent"> 
    <HyperlinkButton.Template> 
     <ControlTemplate TargetType="HyperlinkButton"> 
      <Grid Margin="0,0,0,10" > 
       <Grid.ColumnDefinitions> 
        <ColumnDefinition Width="*" /> 
       </Grid.ColumnDefinitions> 
       <Grid.RowDefinitions> 
        <RowDefinition Height="Auto" /> 
        <RowDefinition Height="*" /> 
       </Grid.RowDefinitions> 

       <TextBlock Grid.Column="0" 
        Grid.Row="0" 
        Text="Advertised" 
        Margin="10,0,0,0" 
        Style="{StaticResource PhoneTextSubtleStyle}" /> 
       <Image Grid.Column="0" 
        Grid.Row="1" 
        Margin="0" 
        Stretch="Uniform" 
        Source="{Binding ExpectedImage}" /> 
      </Grid> 
     </ControlTemplate> 
    </HyperlinkButton.Template> 
</HyperlinkButton> 

回答

0

我的图像源创建白色。 : -/

+0

你知道这是否会永远如此?你可以通过将它加载到一个WritableBitmap来裁剪它 - 或者你甚至可以使用像素检测和BFS算法来获得你正在寻找的东西。 (在一个可写的位图中,搜索说,形状从3个非白色邻居开始)。这取决于你如何使用它,以及它是否值得可能的性能问题。你也可以让你的应用程序“强烈主题化”,不再支持黑色背景。 –

+0

感谢您的信息!我发现我可以控制图像源,所以我可以改变图像的裁剪风格。 –