2010-09-23 73 views

回答

8

用戶控件是增加代碼重用性,實現封裝和減少維護的ASP.NET方法之一。用戶控件與網頁類似。網頁和用戶控件都包含HTML元素和Web控件的標記。一些標籤,如<html>,<head><form>不能用於網頁用戶控件。

這裏有2個鏈接,你會得到imp點以及源代碼。我希望它可以幫助你。

UserControl

UserControl

0

按我的理解,規劃用戶控件之前,我們需要思考的問題:

1)它是在多個地方有用,如果不立即,甚至在未來的發展。 2)如果用戶控件在同一頁面上使用了兩次或更多次(例如用戶控制地址),則會有重複控件ID的機會。對於您需要規劃的情況,您可以如何處理該場景(例如,在用戶控件內部添加所有控件或基於div id等讀取控件)

3)對於單個文本框類型的要求由於用戶控制所需的基礎設施,用戶無法積極控制(直至真正需要)。

我希望這些觀點對您有所幫助。

0

不確定是否要求提供創建用戶控件的原因或創建用戶控件的原則。我將在後面假設,在這種情況下,準則與任何組件開發的準則基本相同。

  1. 用戶控制是可以重複使用的代碼 - 所以應仔細設計根據使用目的它的接口(合同)。例如,消費者將如何傳遞數據來控制(屬性設置器或調用某種方法)。控制應通知消費者通常使用事件等。

  2. 將用戶控制視爲黑盒子,即它不應將其組成控件和字段暴露給消費者。它更好地具有訪問這種內部狀態的特性或方法。同樣,財產不應該公開內部控制 - 例如,如果用戶控制捕獲地址,那麼暴露將獲得/設置地址對象而不是給予個別地址字段控制的屬性的屬性是有意義的。

  3. 嘗試給出用戶控件中的控件的簡稱。用戶控件本身是一個命名容器,因此名稱在頁面上應該是唯一的。提供日誌描述性名稱有時會導致創建長ID,從而增加標記大小。例如,如果地址用戶控件具有名爲StreetNumber的文本框並且Page創建用戶控件的實例並將其命名爲CustomerAddress,則實際字段將獲得名稱/標識,例如CustomerAddress_StreetNumber。我並不是說應該在用戶控制中使用神祕的名字,但是在創建和使用用戶控制時要注意這一點。

相關問題