【问题标题】:create a tiled background image to a control in windows phone 7 silverlight在 windows phone 7 silverlight 中为控件创建平铺背景图像
【发布时间】:2012-05-31 15:37:40
【问题描述】:

这可能很简单,但我正在努力。

我有一个 16x16 的小图像,我想平铺它以填充我的应用程序的背景。 (本例中为LayoutRoot网格控件)

ImageBrush 提供了拉伸它的选项,但没有平铺它的选项。

我确定可以这样做吗?

<Grid.Background>
  <ImageBrush ImageSource="/myApp;component/dark_cf6.png" Stretch="Uniform" />
</Grid.Background>

【问题讨论】:

    标签: silverlight windows-phone-7


    【解决方案1】:

    您总是可以使用像素着色器,看看http://blog.shazzam-tool.com/http://msdn.microsoft.com/en-us/library/dd901594(v=vs.95).aspx

    我之前也用过这个方法,但是有一个平铺的图像效果。

    【讨论】:

    • 谢谢,但 wp7 似乎不支持任何效果。它在早期的 CTP 之一中使用,但在测试版中被删除,即使在那时也不是自定义着色器。
    【解决方案2】:

    WPF 支持使用VisualBrush 创建平铺背景。 WP7 应该也支持这个:

    <Grid.Background>
       <ImageBrush ImageSource="/myApp;component/dark_cf6.png" 
                   TileMode="Tile" 
                   ViewportUnits="Absolute" 
                   Viewport="0,0,16,16" />
    </Grid.Background>
    

    ViewPort 属性是设置正确平铺的关键。

    【讨论】:

    • 感谢您的回复。 WP7似乎不支持VisualBrush,ImageBrush(WP7)中也没有TileMode、Viewport等。我确实觉得这很奇怪,因为这是人们期望能够做到的非常标准的功能。
    • 哇。我刚刚启动了 wp7 模拟器,确实不支持 TileMode/Viewport。我怀疑不支持平铺背景,因为屏幕分辨率是标准化的,您可以创建具有平铺效果的单个图像。不过,这只是我的疯狂猜测。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多