32 10 使用模板更改控制項的UI

2021-09-25 23:40:07 字數 884 閱讀 4952

32.10  使用模板更改控制項的ui

樣式是改變wpf控制項基本外形的非常好(且非常簡單)的方式,它通過為視窗部件的特性設定建立一組預設的值,從而改變wpf控制項的基本外形。但是,即使樣式允許我們改變各種ui設定,視窗部件的整個外觀依然保持完整。不管我們利用各種特性製作出怎樣的button樣式,但是基礎的仍然是我們熟悉多年的矩形視窗部件。

然而,如果您希望完全取代button型別的外觀(如六角形的三維影象)但是保留其作為button的行為,那該怎麼辦呢?如果希望利用wpf程序欄的功能,但是又希望以餅圖圖表百分之百地渲染它的ui,那又該怎麼辦呢?並不需要手動構建自定義控制項(如我們處理許多其他gui工具箱時的做法),wpf提供了控制項模板。

模板將控制項的ui(例如,外觀)和控制項的行為(例如,它對事件和方法的設定)完全分離開來。利用模板,可以自由地完全改變wpf視窗部件的渲染輸出。從程式設計的方式講,控制項模板由controltemplate基類代表,該基類在xaml中使用相同命名的元素表達。一旦建立了模板,就可以使用template特性將其連線到wpf頁面、視窗或者控制項。

構建控制項模板的乙個重要方面就是,使用元素完全控制視窗部件的內容在模板中的定位方式。使用該元素,可以為給定控制項模板指定內容的位置和ui。更重要的是,如果模板中沒有定義元素,使用該元素的控制項將不會渲染任何內容,即使控制項定義了內容。

it will not display "click!" -->  

"mybutton" template ="">  

click!  

除了這點,當您定義控制項模板時發現感覺類似於構建樣式的程序,也不會感到驚訝。舉例來說,模板通常儲存在資源詞典中,支援觸發器等。至此,您已經很好地掌握了構建模板的方法。現在使用名為controltemplates的wpf windows應用程式專案檢視執行中的一些模板。

iOS中UI控制項的使用

uilabel的使用 uilabel label uilabel alloc initwithframe cgrectmake 60,40,100,200 設定內容及字型 label.text 歡迎歡迎熱淚歡迎 歡迎歡迎熱淚歡迎 歡迎歡迎熱淚歡迎 歡迎歡迎熱淚歡迎 設定文字 uicoloryello...

android常用UI控制項的使用例子

之前有幾個好朋友說最近android很火,很想學習下android,在他們的要求下,我給他們講解了android的一些基礎知識,帶他們進入android的大門,以下是講解課程中的第二課,常用ui控制項的使用,第一課主要是android的一些簡單介紹和環境的搭建,這個可以參考我之前的環境搭建的文章,這...

UI控制項的簡單渲染

calayer層樹是cocoa檢視繼承樹的同等物,它具備uiview的很多共同點,但是core animation沒有提供乙個 方法展示在視窗。他們必須宿主到uiview中,並且uiview給他們提供響應的方法。所以uireponder就是uiview的又乙個大的特性。imageview uiima...