官术网_书友最值得收藏!

2.1 控件模型概述

Silverlight 2內置的控件支持豐富的控件模板模型。

Silverlight 2中所有的控件類都是FrameworkElement的子類,根據控件的派生關系不同,可以把它們分為如下幾類。

面板控件:這類控件由Panel類派生,如Canvas、Grid控件等。

內容控件:這類控件由ContentControl類派生,提供了Content屬性,用于定制控件的內容,如Button控件等。

列表控件:這類控件由ItemsControl類派生,經常用于顯示數據的集合,如ComboBox、ListBox控件等。

普通控件:它們直接派生于Control類,自定義控件時也經常會從Control類派生,如TextBox、PasswordTextBox控件等。

其他控件:這類控件并不由Control類派生,而是直接派生于FrameworkElement類,如Image控件等。

它們之間的派生關系如圖2-1所示。

圖2-1

Silverlight提供了可執行許多功能的客戶端控件,可通過比較控件的功能來為您的方案選擇合適的控件。根據控件功能的不同,它們又可以劃分為如下幾類。

命令控件:響應來自鼠標、鍵盤、手寫筆或其他輸入設備的用戶輸入,并引發Click事件,如Button、HyperlinkButton控件等。

文本編輯控件:提供用于編輯或顯示文本的控件,如TextBox、PasswordBox控件。

選擇控件:使用戶可以從多個預設置的值集合中選擇一項或多項,如CheckBox、RadioButton控件等。

列表控件:用于展示列表集合或讓用戶從列表集合中選擇。

日期控件:可用于顯示或供用戶選擇日期,包括Calendar、DatePicker控件。

信息顯示控件:用于顯示少量的文字信息或報告當前操作的進度,如TextBlock、ProgressBar控件。

數據顯示控件:以表格的形式顯示數據集合,只有DataGrid控件支持此功能。

多媒體控件:用于顯示圖像、承載音頻或視頻,如Image、MediaElement控件等。

布局控件:用于對界面元素進行定位和布局,如Canvas、Grid控件等。

所有控件的功能雖然不同,但是Silverlight在設計之初,就考慮了控件模型的一致性,這樣便于我們在各個不同的控件之間執行一些相似的任務,包括:

創建控件的實例

使用屬性更改單個控件的外觀

使用樣式更改多個控件的外觀

使用模板為控件創建自定義外觀

處理控件事件

下面將按照控件的不同功能,詳細介紹它們的使用方法,其中部分控件會放到本書后面的章節中介紹。

主站蜘蛛池模板: 廊坊市| 澄江县| 新密市| 永善县| 太白县| 江北区| 乐清市| 平塘县| 连云港市| 漠河县| 丰镇市| 清苑县| 峨眉山市| 友谊县| 鹤山市| 新疆| 茂名市| 会理县| 维西| 田林县| 曲阳县| 郧西县| 内黄县| 永安市| 左贡县| 汝南县| 石泉县| 观塘区| 新巴尔虎左旗| 宣威市| 沂水县| 始兴县| 通辽市| 拜泉县| 施秉县| 岢岚县| 磴口县| 闵行区| 沁阳市| 龙里县| 绵阳市|