首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 媒体动画 > CAD教程 >

Grid背景图片平铺,哪位高手弄过了的,给点建议

2013-01-06 
Grid背景图片平铺,谁弄过了的,给点建议?如题!项目中碰到将Grid背景图片平铺的问题!原本以为很简单,试了下,

Grid背景图片平铺,谁弄过了的,给点建议?
如题!项目中碰到将Grid背景图片平铺的问题!原本以为很简单,试了下,好像都行不通!在网上查了下,好像说Grid还不支持平铺!
不知道是不是真的!有谁弄过了的给点建议!
想了一个办法是在服务器端的*.html页面,中body中设置图片的平铺样式!不过觉得这种方法好别扭!
希望能给出好的办法!
[解决办法]
Image 和 ImageBrush 都不能平铺。
Silverlight中的 Stretch 枚举没有 Tile 这个值,是没有平铺功能喔。

不知从 Grid 中派生出 Panel 能不能实现:
根据图片的大小,在 MeasureOverride() 中计算出面板的整个可视区域可以平铺 n*m 个图片,
在  ArrangeOverride() 中,使用 Rectangle+ImageBrush  或者是 Image 来显示图片,
一共要排列 n*m 个 Rectangle 或 Image。

貌似应是可以实现的,就是嫌浪费内存了,而且根本就不是用的背景,而是在面板中排列上 n*m 个子控件,ZIndex 为 0 ,并且,在这个Grid面板中不能再分成多行多列了,只能嵌套一个 Grid ,在嵌套的 Grid 中再分多行多列。
[解决办法]
可以平铺的~~
比如在grid中放一个image~要设置image的一些属性~~


image.VerticalAlignment = VerticalAlignment.Stretch;//设置纵向拉伸
image.HorizontalAlignment = HorizontalAlignment.Stretch;//设置横向拉伸
image.Margin = new Thickness( 0 );//设置image与父类容器的外边距为0

不用设置image的宽和高,那样image就不能拉伸了~
[解决办法]
呵呵~~我用的是WPF~~~
[解决办法]

引用:
冷大神, Fill 的效果只是拉伸, 平铺应是 Tiled , 比如用 宽度为1px,高为20px 的图片作为 宽100高20的区域的背景,平铺的效果就相当于用100张相同的图片水平的连续放置在这个区域中,这在Html网页中很常见。
第一次见“平铺”这个词是在Windows98的桌面属性的对话框中,经典啊。


原来这样,我看了一些资料,貌似不支持平铺的效果。2楼的方法楼主试过了么?

热点排行