使用者控制項傳值其實有很多種方法,但我個人比較習慣用property方式
下面看乙個場景:
在乙個form中有乙個tab控制項,tab的兩個item中分別放兩個使用者控制項uc1,uc2,
現在的需求是需要把uc1中乙個控制項的值賦給uc2中的乙個控制項。
如果uc1中是label控制項,就可以直接在uc2中賦值了:
dim但是如果是textbox等控制項就有些不一樣了,需要用別的方式實現,我這裡用的是property:uc1
asusercontrol1
=new
usercontrol1
me.textbox1.text
=uc1.label1.text
先在uc2中定義這個屬性:
privatevb 10.0 or latter可以直接這樣寫:_testvalue
asstring
=string
.empty
public
property
testvalue
asstring
getreturn
_testvalue
endget
set(
byval
value
asstring
)_testvalue
=value
endset
end property
property然後在form中:testvalue
asstring
private最後在uc2中:subtabcontrol1_selectedindexchanged(
byval
sender
assystem.object,
byval
e as
system.eventargs)
handles
tabcontrol1.selectedindexchanged
me.usercontrol21.testvalue =me
.usercontrol11.textbox1.text
end sub
private結果:這樣當選中uc2的中的核取方塊時就把uc1中文字框的值賦給uc2中文字框了subcheckbox1_checkedchanged(
byval
sender
assystem.object,
byval
e as
system.eventargs)
handles
checkbox1.checkedchanged
ifcheckbox1.checked
then
me.textbox1.text
=testvalue
else
me.textbox1.text
=string
.empty
endif
end sub
當然,這只是其中一種思路,還可以嘗試其他思路,比如委託等。
Winform中窗體中兩使用者控制項傳值
最近在做乙個小專案,中間遇到了乙個問題,由於多個窗體中要用到單位選擇,於是自己做了乙個下拉選擇樹的使用者元件,想通過使用者選擇完單位後,傳到另外乙個使用者控制項中去,在這個控制項中通過在下拉選擇樹中使用者選擇的節點編號,到資料庫中進行查詢,1 首先在下拉選擇樹控制項中新增乙個委託事件,public ...
winform 窗體傳值
在form1中 我們要把乙個文字傳遞給form2窗體,假定為passtext public string passtext form1中還有個按鈕button1在其點選事件中有 private void button1 click object sender,eventargs e 在form2的物...
PostBackUrl 使用者控制項頁面傳值總結
postbackurl 使用者控制項頁面傳值總結 今天在除錯郵件傳送的時候,發現了get傳遞資料的最大值問題,檢視 了有關資料說get方式最大的傳遞值為2k 包括url字元 因此只能修改 換別的方式。本來計畫使用post方式,但是post方 式無法獲取使用者控制項中的資訊,所以此方法作罷。以下介紹使...