作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
仅显示图像列表的简单应用。图像列表必须保持宽高比,但必须是全窗口宽度 + 一点边距。困难的部分是使图像额外具有圆角。
想法?
我唯一的成功是使用 ImageBrush,但使用它的任何控件都不能保持纵横比。例如,这里必须设置高度和宽度。
<Rectangle RadiusX="10" RadiusY="10" Stretch="Fill" Width="100" Height="100" >
<Rectangle.Fill>
<ImageBrush ImageSource="{Binding}"></ImageBrush>
</Rectangle.Fill>
</Rectangle>
完整资源在这里:http://1drv.ms/1HlZHVe
最佳答案
我通过使用 ImageBrush 在我的图像(在我的 UWP 应用程序中)上得到了很好的圆角,但是如果你以编程方式执行此操作要小心 - 我第一次这样做时我设法使用我的内存相当差并且消耗了太多(差编码)。
我像您一样经常使用 ImageBrush,但我没有发现任何纵横比失真;确保您正在适本地设置诸如 Stretch 之类的属性 - 例如Stretch.UniformToFill
。
<Rectangle x:Name="rctCardFace" Margin="0" RadiusX="20" RadiusY="20" HorizontalAlignment="Stretch" VerticalAlignment="Stretch">
<Rectangle.Fill>
<ImageBrush Stretch="UniformToFill"/>
</Rectangle.Fill>
</Rectangle>
或者在 C# 中
Uri path = new Uri(_ActiveStyle.BackgroundImagePath, UriKind.Absolute);
BitmapImage bitmapImage = new BitmapImage(path);
if (_AppReference.CardManager.TempImgBrush == null)
{
_AppReference.CardManager.TempImgBrush = new ImageBrush();
}
_AppReference.CardManager.TempImgBrush.ImageSource = bitmapImage;
_AppReference.CardManager.TempImgBrush.Stretch = _ActiveStyle.BackgroundImageStretch;
_AppReference.CardManager.TempImgBrush.AlignmentX = _ActiveStyle.BackgroundImageAlignX;
_AppReference.CardManager.TempImgBrush.AlignmentY = _ActiveStyle.BackgroundImageAlignY;
cfPreview.ImgB = _AppReference.CardManager.TempImgBrush;
关于win-universal-app - win10 app - 圆角图像保持纵横比,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30291681/
我有一张 table 。我希望它的数据垂直和水平居中。 我使用了 align="center"valign="middle" ,但它没有用。
我是一名优秀的程序员,十分优秀!