Group的使用很简单,但功能很强大。它能让一系列的VML对象使用共同的坐标系,它很常用的,基本上如果使用了超过一个VML对象的页面都使用Group。使用Group还有个好处,就是可以动态改变CoordSize值放大或缩小整个 Group 里面的VML。
<v:group ID="group1" style="position:relative;WIDTH:200px;HEIGHT:200px;" coordsize = "2000,2000">
<v:rect style="WIDTH:2000px;HEIGHT:2000px" fillcolor="#99cccc">
<v:shadow on="t" type="single" color="silver" offset="5pt,5pt">
</v:rect>
<v:oval style="position:relative;top:100;left:100;width:1000;height:1000;z-index:7;" fillcolor="red" strokeColor="red"/>
<v:rect style="position:relative;top:500;left:300;width:1000;height:1000;z-index:8;" fillcolor="blue" strokeColor="blue"/>
<v:line from="200,200" to="1000,1700" style="z-index:9" fillcolor="yellow" strokeColor="yellow" strokeWeight=2pt/>
</v:group>
相信如果你看懂了上面的代码,对 Group 一定理解了。上面使用了一个和Group一样大小的 Rect 作为 Group的边框,然后加上阴影渲染。用MSDN的一个很有意思的例子再看看 Group 的重要用法:(
改变滚动条的值,右边的图片会相应的旋转)
该例子中,那张图片完全是用VML画出来的,动态改变 Group 的 Rotation 属性就可以实现整个 Group 里面的对象旋转。