控制項的包裝

2021-10-05 01:53:53 字數 3850 閱讀 2107

控制項的包裝,就是把標準控制項包裝一層,是復合控制項的一種特殊形式

比如,比較常見的是對textbox的包裝

public mjtextbox : usercontrol

比如:textbox不可調整高度、不可設定padding,所以在布局時會產生困難。

namespace winform控制項的包裝

protected

override

void

onlayout

(layouteventargs e)

}}之後重新生成專案

重新開啟form.cs

可以在乙個單獨的檔案中定義,以方便重複

1.手工定義乙個類mjtextbox :

usercontrol

2.雙擊開啟設計器,設計器會把介面**寫在同乙個檔案裡

3.新增構造方法,呼叫initializecomponent

using system;

using system.collections.generic;

using system.drawing;

using system.linq;

using system.text;

using system.threading.tasks;

using system.windows.forms;

namespace winform控制項的包裝

// 手寫

演示:給mjtextbox新增一些屬性,使其和textbox用法類似

using system;

using system.collections.generic;

using system.componentmodel;

using system.drawing;

using system.linq;

using system.text;

using system.threading.tasks;

using system.windows.forms;

namespace winform控制項的包裝

// 手寫

public

mjtextbox()

protected

override

void

onlayout

(layouteventargs e)

// 新增屬性

[browsable

(true)]

// 編譯器是否可見此屬性

[designerserializationvisibility

(designerserializationvisibility.visible)

]public

override

string text

set}

[browsable

(true)]

// 編譯器是否可見此屬性

給mjtextbox新增乙個回車事件returnpressed

using system;

using system.collections.generic;

using system.componentmodel;

using system.drawing;

using system.linq;

using system.text;

using system.threading.tasks;

using system.windows.forms;

namespace winform控制項的包裝

// 手寫

public

mjtextbox()

protected

override

void

onlayout

(layouteventargs e)

// 新增屬性

[browsable

(true)]

// 編譯器是否可見此屬性

[designerserializationvisibility

(designerserializationvisibility.visible)

]public

override

string text

set}

[browsable

(true)]

// 編譯器是否可見此屬性

[designerserializationvisibility

(designerserializationvisibility.visible)

]public

override

color backcolor

set}

// 自定義回車事件:

內容包裝器控制項

asp.net 2.0 提供了master page 技術,可以把公共的頁面部分放在統一個master檔案中。提供了theme,可以把控制項統一的屬性樣式放在乙個skin檔案中。在我們的ui層頁面開發過程中,會遇到這樣一種情況 很多頁面塊的外圍內容一樣,如csdn論壇的首頁面 那乙個個的內容塊,都要...

匯入 使用者控制項包裝器

從開發 webpart 的過程,我們也可以看出,假若想開發功能比較複雜的 webpart 也就是表現樣式比較豐富的 webpart 用我們上面的辦法是行不通的。於是,我們就要想想有沒有別的辦法了。其實,我們仔細考慮下 wss3 中webpart 從哪個類繼承就知道該怎麼作了。由於,無論是 wss3 ...

共享你的控制項 用NuGet包裝自己的控制項

在當前的開發中,nuget的使用已經有了不小的地位,特別是應用.net core的uwp開發裡,模組化的平台本身更是直接依賴於nuget這一包管理器。有時自己開發了乙個不錯的控元件,想通過nuget與廣大開發中分享,以享受包管理器快捷 模組化的優勢,該如何做呢?本文將就基本的uwp控制項的開發與打包...