卖逼视频免费看片|狼人就干网中文字慕|成人av影院导航|人妻少妇精品无码专区二区妖婧|亚洲丝袜视频玖玖|一区二区免费中文|日本高清无码一区|国产91无码小说|国产黄片子视频91sese日韩|免费高清无码成人网站入口

通過控件名返回控件對(duì)象、反射

在WINFORM程序中,我們經(jīng)常會(huì)遇到一種情況,即知道某一控件的名稱,需要直接將該名稱轉(zhuǎn)換成控件對(duì)象。這樣我們就可以使用該控件的某個(gè)屬性或者方法。比如,假設(shè)現(xiàn)在有一個(gè)按鈕控件,其名稱為"button1

在WINFORM程序中,我們經(jīng)常會(huì)遇到一種情況,即知道某一控件的名稱,需要直接將該名稱轉(zhuǎn)換成控件對(duì)象。這樣我們就可以使用該控件的某個(gè)屬性或者方法。比如,假設(shè)現(xiàn)在有一個(gè)按鈕控件,其名稱為"button1",我們想要將其Enabled屬性設(shè)置為False。下面介紹兩種方法來實(shí)現(xiàn)這一目標(biāo)。

方法一:通過查找控件名稱的方法返回等值控件對(duì)象

```csharp

("button1", True)(0).Enabled False

```

以上方法是在窗體中查找所有名稱為"button1"的對(duì)象,并返回?cái)?shù)組。我們可以通過取數(shù)組中的第一個(gè)對(duì)象來獲取該控件。

方法二:通過反射的方法獲取對(duì)象

首先,我們需要準(zhǔn)備一個(gè)函數(shù),該函數(shù)根據(jù)對(duì)象名稱返回該對(duì)象。

```csharp

Function GetObj(ByVal Pobj As Object, ByVal ObjName As String) As Object

Return ().GetField("_" ObjName, Or Or ).GetValue(Pobj)

End Function

```

然后,我們可以直接調(diào)用上述函數(shù)來獲取控件對(duì)象并設(shè)置其Enabled屬性為False。

```csharp

GetObj(Me, "button1").Enabled False

```

其中,Pobj參數(shù)表示當(dāng)前對(duì)象的容器,一般使用Me表示當(dāng)前窗體對(duì)象。

通過上述兩種方法,我們可以方便地根據(jù)控件名稱獲取對(duì)應(yīng)的控件對(duì)象,并進(jìn)行進(jìn)一步的操作。這在編寫WINFORM程序時(shí)非常有用,能夠提高開發(fā)效率。

標(biāo)簽: