WPF:我如何创建一个水平重复的背景而不会刮擦?

fed*_*bin 9 wpf background imagebrush

我想为我的窗口创建一个背景,这是一个我想要水平重复的图像.到目前为止,我已尝试使用ImageBrush,但此选项会在水平和垂直方向上重复显示图像.此外,我不希望它在用户调整窗口大小时进行缩放,因为它使图像看起来很有趣.

有任何想法吗?

Jam*_*ose 9

如果您想要做的是像在CSS中那样水平平铺图像,使用简单的一行 "background-repeat:repeat-x",然后经过一些(!)试验和错误,您需要在XAML中使用的是:

<ImageBrush ImageSource="Images/my-background-image.png" 
            TileMode="FlipY" 
            Stretch="Uniform"
            AlignmentY="Top"
            Viewport="0,0,90,3000"
            ViewportUnits="Absolute" />
Run Code Online (Sandbox Code Playgroud)

Viewport属性中的最后2个值是图像的宽度(以像素为单位),然后是一个非常大的数字,高于您的视口高度,以便图像不会在该高度内沿Y方向重复.