小戚园地

Do as I want to do!
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

Silverlight学习点滴系列(三)

Posted on 2009-09-17 09:12  YeanJay  阅读(565)  评论(0编辑  收藏  举报

1)回忆

在上一次的Silverlight 学习点滴系列(二)讲到了两种布局面板,分别是Canavs,StackPanel。今天我们来学习一下第三种布局面板,也是一种最灵活的布局面板:Grid

2GridHtml中表格的比较

接下来我们的布局也基本上会用到Grid这个控件,这个控件比较类似于HTML中的表格,在HTML中我们设置表格的样式。例如对表格中的行设置样式:


    在这里我们设置了一行三列的表格。表格的样式边框的宽度是
5px背景颜色为蓝色。并且我们发现,表格中的控件,必须包含在<tr> 或者<td>中,我们这里将一个Button嵌入在<td>当中。这也就是跟Grid区别的地方。

Grid 可以不需要将控件嵌入到行/ 列元素中,直接通过定义<Grid.RowDefinitions><Grid.ColumnDefinitions>属性来定义行和列,这样直接可以通过控件的“附加属性”来定义控件在Grid中的哪一行,哪一列。如Grid.Row=”0” Grid.Column=”1”,代表了在Grid中的第0行,第一列。也就是我们平时讲的第一行,第二列。

3)使用Grid布局

 

我们用Grid来定义三行三列的布局,并且在这中间嵌入三个按钮,分别在第00列,第11列,第22列。


如图中红框所示。我们来看下运行的效果:

 


4)通过Grid来实现一般布局

一般情况下我们的网站都是上下布局,顶上基本上都会有一个输入框,然后一个搜索按钮,用来搜索本站的内容,然后下面会有一堆东西。呵呵。我们来看下卓越网也是其中的一个例子,还有就是window live的网站等等:

 


   
    我们看到上面是卓越网的有一个输入框,一个按钮,下面是
Windows Live的首页,也是同样的道理用一个输入框,和一个按钮。

 


    我们就来实现一下这样的布局:

首先我们在一个Grid里面定义两行,一行是用来存放我们上面提到的搜索框那些东西,一行是用来存放下面那些比如商品啊或者其他信息。当然我们存放一条固定的60像素宽度,其余多下来的给另一行,我们可以用“*”来代替。为了显示效果,我们设置Grid的表格线可见,只要设置ShowGridLines=”True”就可以了。


  
   运行效果:
  


  
   接下来我们来对头部的一行来布局。我们仍旧用
Grid来布局,我们在刚刚那个Grid下面再定义一个Grid,别且设置它的Grid.Row=”0”这样就在第一个Grid的第一行里面了。我们设置这个Grid三列,分别用来放卓越网上面的“商品搜索”关键字标题,Windows Live中的输入文本框,和一个搜索按钮。
 

运行的效果如下:
  


 
   今天就到这里吧……晚安……
   继续看下一篇Silverlight学习点滴系列(四)