繁体   English   中英

在wpf MVVM上使用缩放值显示图像

[英]Display image using a scaling value on wpf MVVM

我在XAML中有这个标记:

<Canvas Width="250" Height="250">
    <Image Source="{Binding UserImage}" HorizontalAlignment="Center" VerticalAlignment="Center"  />
</Canvas>

这是以原始大小显示图像(我不知道大小,因为它取决于设计时无法使用的userimage)

我想以原始大小的1/10显示它。 显示图像的像素大小恰好是原始图像大小的1/10,这一点非常重要。

我怎样才能做到这一点?

这是一个MVVM应用程序,如果可能的话,我更喜欢在XAML而不是C#代码中执行此操作。

您是否尝试过在图像上应用比例转换? 首先,将以下内容添加到Image控件以强制以其原始大小进行绘制:

<Image ... Stretch="None" />

然后应用LayoutTransformation将图像缩小到原始大小的1/10:

<Image Stretch="None" Source="{Binding UserImage}" HorizontalAlignment="Center" VerticalAlignment="Center">
    <Image.LayoutTransform>
            <ScaleTransform ScaleX="0.1" ScaleY="0.1"/>
    </Image.LayoutTransform>
</Image>

我只想对此发表评论,但我没有足够的代表。 您是否可以仅在<Image>标签而不是<canvas>标签上设置高度和宽度? 还是可能在<Image>标签上使用MaxHeight和MaxWidth属性?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM