互聯力量Silverlight之_GridSplitter控件

Silverlight教程

第十節中,互聯力量已經教大家安裝了,微軟剛推出的Silverlight 4.0 簡體中文正式版,從今天開始,跟互聯力量學Silverlight系列將使用Silverlight 4 中文版來描述Silvelight 4 最新的案例。本節內容說到的是Silverlight GridSplitter控件,這個控件其實就是可以拖動的分隔窗體的控件,最常見的形式是資源管理器的左右分隔效果。

Silverlight GridSplitter控件在System.Windows.Controls.dll程序集,如果你是用Silverlight 3,要手動添加引用。添加的方法可以參考“Silverlight WrapPanel和DockPanel用法”。如果你已經按上節完整安裝了Silverlight 4,可以直接從工具箱拖放GridSplitter控件來使用。GridSplitter從名字上可以看出,它和Grid控件是相關聯的,實際上它必須放在Grid控件的單元格里面,而且這個單元格的寬或高設爲“Auto”。

下面我做個用GridSplitter控件分隔左右兩列效果的例子。先在Grid裏面,創建三列,因爲只有一行,所以可以省略行的定義。把GridSplitter放在中間一列上,左右兩列分別放兩個Button,代碼如下:

跟互聯力量學Silverlight之十一_GridSplitter控件_圖1

跟互聯力量學Silverlight之十一_GridSplitter控件_圖1

asp.net教程

從代碼中可以看出,通過GridSplitter.Background可以設定分隔線的顏色,ShowPrevidw是設定在拖動GridSplitter的時候,實時顯示拖動的結果還是等待拖動鼠標放開後顯示,false表示實時的顯示。運行結果如圖:

跟互聯力量學Silverlight之十一_GridSplitter控件_圖2

跟互聯力量學Silverlight之十一_GridSplitter控件_圖2

武漢雙證培訓

接着我們實現更復雜的效果,通常在網頁中,經常可以看到左右分隔的同時,還有上下分隔的效果。根據前面的例子,很明顯GridSplitter是需要兩個的,但是怎麼放呢?分析,Grid應該有多行和列組成,GridSplitter要佔用單元格,加起來應該有三行三列,分配的方式是,第一行合併三列放一個button,第二行放GridSplitter沿垂直方向拖動。第三行分別放左Button,中間的水平方向拖動GridSplitter,右Button。代碼如下:

跟互聯力量學Silverlight之十一_GridSplitter控件_圖3

跟互聯力量學Silverlight之十一_GridSplitter控件_圖3

跟互聯力量學Silverlight之十一_GridSplitter控件_圖4

跟互聯力量學Silverlight之十一_GridSplitter控件_圖4

這個效果也可以用三個Grid來做,就是把最外層的Grid1裏面按行放Grid2,GridSplitter1,Grid3,然後在Grid3裏面再分三列,把GridSplitter2放第二列。效果相同,只是代碼要更多一些。今天說到這裏。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章