2020国产成人精品视频,性做久久久久久久久,亚洲国产成人久久综合一区,亚洲影院天堂中文av色

分享

Visual Studio C# 中使用用戶控件 實(shí)例

 悟靜 2014-03-30

Visual Studio C# 中使用用戶控件  

2010-05-30 21:27:52|  分類: C# |舉報(bào) |字號(hào) 訂閱

使用VS C#無論是WinForm開發(fā),還是WebForm 開發(fā)都會(huì)遇到一個(gè)問題:在Form布局時(shí),會(huì)重復(fù)使用相同的一組控件。如下圖中的控件

Visual Studio C 中使用用戶控件 - Steven - Steven的博客

 這一組控件是非常常用的,但是如果每一次布局相似的窗體時(shí),都對這些控件進(jìn)行屬性設(shè)置會(huì)是一件非常沒有技術(shù)含量的工作。通常這時(shí)就需要用到用戶控件了。

在當(dāng)前的項(xiàng)目上添加新建項(xiàng),在彈出的對話框中選擇“用戶控件”:

Visual Studio C 中使用用戶控件 - Steven - Steven的博客

 在下面的名稱設(shè)置一下用戶控件的名稱。這里我就命名為:DataArea。在生成的用戶控件設(shè)計(jì)窗體,布局控件:

Visual Studio C 中使用用戶控件 - Steven - Steven的博客

 這些都比較簡單,但關(guān)鍵是問題是,生成的用戶控件默認(rèn)是不會(huì)暴露子控件的屬性。比如:你無法直接使用用戶控件的實(shí)例來設(shè)置子控件DatePicker的value屬性來設(shè)置日期值。這里有二種做法:

一、使用userControl.Controls["用戶控件中的子控件名"],來調(diào)用子控件,再設(shè)置子控件的相關(guān)屬性。但是這有一個(gè)問題,就是你需要記住每個(gè)控件的Name屬性,而且調(diào)用的時(shí)候需要先把查找到的子控件強(qiáng)制轉(zhuǎn)換向下轉(zhuǎn)型到正確的控件類型,然后再進(jìn)行設(shè)置。這顯示是比較麻煩的,所以不推薦使用;

二、在設(shè)計(jì)用戶控件時(shí),就暴露子控件的一些屬性,把這些屬性設(shè)計(jì)為用戶控件的公用屬性。這樣,直接調(diào)用用戶控件的這些設(shè)置好的屬性就可以設(shè)置或者取得子控件的屬性了,同時(shí)這樣的設(shè)計(jì)還有良好的封裝性。代碼如下:

Visual Studio C 中使用用戶控件 - Steven - Steven的博客

 三個(gè)暴露出來的屬性分別是開始日期,結(jié)束日期,和查詢按鈕。Form的調(diào)用代碼如下:

Visual Studio C 中使用用戶控件 - Steven - Steven的博客

 這樣的代碼,既簡單又容易解理,調(diào)用者不必了解用戶控件的具體設(shè)計(jì)細(xì)節(jié),只需要了解控件所暴露出來的屬性即可方便使用全部子控件。

其實(shí)你可以把用戶控件當(dāng)作窗體來設(shè)計(jì)和進(jìn)行編碼,只不過是這個(gè)特殊的窗體需以其他的窗體作為載體。當(dāng)然,你也可以在用戶控件中加入一些具體處理的事件處理和變量計(jì)算等等。

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請遵守用戶 評(píng)論公約

    類似文章 更多