※ 引述《qazsd (捨得 放下 空)》之銘言:
: ※ [本文轉錄自 Web_Design 看板]
: 架構如下:
: Panel1
: └ CheckBox1 ─ PlaceHolder1
: └TextBox1_1 ─ TextBox1_2 ─ TextBox1_3
: Panel2
: └ CheckBox2 ─ PlaceHolder2
: └TextBox2_1 ─ TextBox2_2 ─ TextBox2_3
: Panel3
: └ CheckBox3 ─ PlaceHolder3
: └TextBox3_1 ─ TextBox3_2 ─ TextBox3_3
: 就是小弟由上而下放了三個Panel,每個Panel裡都有CheckBox、PlaceHolder跟TextBox
: 在點了其中一個方塊後,就會在該方塊(例如CheckBox1)的旁邊,
: 秀出三個輸入文字方塊(例如TextBox1_1 ─ TextBox1_2 ─ TextBox1_3)
: 想當然也,要不就是文字方塊的Visable屬性預設為false,
: 不然就是PlaceHolder的Visable屬性為false。
: 現在想將這三個CheckBox的CheckedChanged事件通通寫成一個函式
: 但因為要判斷是哪個方塊被核取,然後再顯示或隱藏相對應的文字輸入方塊
: 試問這是叫作"多型"對吧?也就是函式傳參數進去..
: 那有沒有辦法判斷出是點了哪一個CheckBox
: 接著再找出它的父控制項,也就是Panel
: 好去更改它子控制項(PlaceHolder)的屬性(Visable),讓TextBox可以顯現或隱藏
1.三個控制項的OnSelectedChange事件都設定為同一個Method
例如
public void SelectedChange(object sender,EventArgs e){
CheckBox chk = (CheckBox) sender;
MessageBox.Show(chk.Checked+"");//秀出來了
if(chk.Parent is Panel){
Panel panel = (Panel)chk.Parent;
//搞定
}
}
--
我很可憐,前幾天出了場車禍,
對方一下車不清青紅皂白的就把我打了一頓,
我問他為什麼打我?他說因為我長的太帥,我很生氣!!
因為我覺得我長的一點都不出色...
我抓了個路人來幫我評評理,那路人也打了我一頓,ꘊ為他說我說謊..我招誰惹誰了我!!
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 163.17.9.234