Silverlight教程第七部分:使用控件模板定制控件的觀感
原文地址: Silverlight Tutorial Part 7: Using Control Templates to Customize a Control's Look and Feel 原文發(fā)表日期: Friday, February 22, 2008 5:48 AM
這是8個系列教程的第七部分,這系列示范如何使用Silverlight 2的Beta1版本建造一個簡單的Digg客戶端應(yīng)用。這些教程旨在按順序閱讀,幫著解釋Silverlight的一些核心編程概念。
如何定制控件的觀感(Look and Feel)
WPF和Silverlight編程模型中一個強大無比的功能,就是能夠完全定制所使用的控件的觀感(Look and Feel )。這允許開發(fā)人員和設(shè)計師對控件的界面以微妙和戲劇性的方式進行精雕細琢,促成無比的靈活性以創(chuàng)建出恰如所愿的用戶體驗。
在這篇教程里,我們將看一下你可以定制控件的幾種方式,然后在結(jié)尾使用這些技術(shù)對我們的Digg應(yīng)用的用戶界面潤色一下。
定制控件的內(nèi)容
在這個系列的第一部分里,我們在頁面上加了一個簡單的按鈕控件,示范了如何把它的內(nèi)容設(shè)成一個自定義的“Push Me!”文字字符串。然后我們連接了一個Click事件處理函數(shù),在它被點擊時執(zhí)行一些代碼:
這導(dǎo)致按鈕在瀏覽器里象下面這么顯示:
關(guān)于按鈕控件,也許會讓你感到驚奇的一件事情是,它的Content屬性,不必是象“Push Me!”這樣簡單的字符串。實際上,我們可以把Content屬性設(shè)成我們想要的任何形狀或控件序列:
譬如,我們可以嵌入一個StackPanel,內(nèi)含 <Image> 和 <TextBlock> 控件:
點擊放大
這會導(dǎo)致我們的按鈕在運行時看上去會象下面這樣。注意,它依然保留同樣的功能行為(按它的話,按鈕會陷下去,點擊事件處理函數(shù)也會象以前一樣觸發(fā)):
我們也可以使用形狀控件(象下面這樣的Ellipse控件)來在按鈕里面創(chuàng)建自定義的矢量圖像:
注意上面我是怎么使用一個偏移RadialGradientBrush來加一個非常好看的反射式光澤來填充Ellipse控件的:
我們甚至可以搞些古怪,在按鈕內(nèi)嵌入可交互的象日歷這樣的控件:
點擊放大
在上面的例子中,日歷控件是完全可以交互的,意味著終端用戶可以前后翻月歷,在日歷里選擇一個日期,然后按其中的按鈕,觸發(fā)Click事件處理函數(shù):(注:我不清楚這是否會是一個好的用戶體驗,但它確實展示了你所能做之靈活性。
我上面概述的這些類型的內(nèi)容定制場景不僅對按鈕控件有效,同樣地對其他繼承自ContentControl基類的其他控件也工作。
出處:Scott Guthrie 博客中文版
責(zé)任編輯:bluehearts
上一頁 下一頁 使用控件模板定制控件的觀感 [2]
◎進入論壇RIA設(shè)計與應(yīng)用版塊參加討論
|