C# 图像作为背景图案或平铺-UWP
我已经开发wpf应用程序几年了,我曾经使用以下代码平铺图像并将其用作背景模式:C# 图像作为背景图案或平铺-UWP,c#,uwp,uwp-xaml,C#,Uwp,Uwp Xaml,我已经开发wpf应用程序几年了,我曾经使用以下代码平铺图像并将其用作背景模式: <ImageBrush ImageSource="/Images/GroupPattern.png" TileMode="Tile" ViewportUnits="Absolute" Viewport="0,0,32,32"/> 然而,在UWP中,瓷砖似乎不起作用,经过一些研究,我没有发现任何东西 那么,有人知道什么是等价物吗 谢谢 如@JohnnyWestlake所述,您可以使用Microsof
<ImageBrush ImageSource="/Images/GroupPattern.png" TileMode="Tile" ViewportUnits="Absolute" Viewport="0,0,32,32"/>
然而,在UWP中,瓷砖似乎不起作用,经过一些研究,我没有发现任何东西
那么,有人知道什么是等价物吗
谢谢 如@JohnnyWestlake所述,您可以使用Microsoft Win2D库。只需将此代码段添加到xaml中:
<Page .....
xmlns:win2d="using:Microsoft.Graphics.Canvas.UI.Xaml"
.....>
<Grid>
<win2d:CanvasControl CreateResources="BackgroundCanvas_CreateResources"
Draw="BackgroundCanvas_Draw" />
</Grid>
</Page>
(希望有帮助)作为@JohnnyWestlake notised,您可以使用Microsoft Win2D库。只需将此代码段添加到xaml中:
<Page .....
xmlns:win2d="using:Microsoft.Graphics.Canvas.UI.Xaml"
.....>
<Grid>
<win2d:CanvasControl CreateResources="BackgroundCanvas_CreateResources"
Draw="BackgroundCanvas_Draw" />
</Grid>
</Page>
希望有帮助)可能的副本没有内置的等效项。如果要将其用作画笔,则必须从XamlCompositionBrushBase创建自己的画笔,并将其与支持平铺的Win2D边界效果相结合。有一个未记录的例子,但它不是值得生产的代码(我用它来报告一个错误)我会尝试一下,我不知道为什么这样的基本功能不可用…谢谢你,我尝试了,它的工作,但平铺太大,我的控制几乎整个页面,有没有办法将其设置为24x24?如果这是您使用视口的目的,那么没有简单的方法可以做到这一点。(从技术上讲,Win2D CropEffect通常可以链接到效果图来完成这项工作,但它不适用于合成API)。您可以使用composition API缩放用于笔刷的曲面,也可以创建自己的CompositionDrawingSurface并使用Win2D API在其上绘制所需的任何内容。这当然不是小事!不过,最简单的方法是实际调整源图像的大小。源图像的可能副本并没有内置的等价物。如果要将其用作画笔,则必须从XamlCompositionBrushBase创建自己的画笔,并将其与支持平铺的Win2D边界效果相结合。有一个未记录的例子,但它不是值得生产的代码(我用它来报告一个错误)我会尝试一下,我不知道为什么这样的基本功能不可用…谢谢你,我尝试了,它的工作,但平铺太大,我的控制几乎整个页面,有没有办法将其设置为24x24?如果这是您使用视口的目的,那么没有简单的方法可以做到这一点。(从技术上讲,Win2D CropEffect通常可以链接到效果图来完成这项工作,但它不适用于合成API)。您可以使用composition API缩放用于笔刷的曲面,也可以创建自己的CompositionDrawingSurface并使用Win2D API在其上绘制所需的任何内容。这当然不是小事!最简单的方法是实际调整源图像的大小。