控制項的包裝,就是把標準控制項包裝一層,是復合控制項的一種特殊形式
比如,比較常見的是對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控制項的開發與打包...