none
TableLayoutPanel 和 CheckBox的checked屬性 RRS feed

  • 問題

  • 請問大大一下....
    存在TableLayoutPanel裡的控制項....
    是不是型態都會自動的轉成Control?

    因為今天把checkBox放到tableLayoutPanel裡

    tableLayoutPanel.Controls[0] 裡面找不到checked 這個屬性
    直到把tableLayoutPanel.Controls[0]轉成CheckBox型態
    才能明確的使用checked這個屬性....

    所以想請問大大一下~^^~ 謝謝
    2007年9月3日 上午 09:37

解答

  • 不只是 TableLayoutPanel ,容器類 GroupBox、Panel ... 應該都需要自己轉型

     

    Code Snippet

    ((CheckBox) tableLayoutPanel1.Controls[0]).Checked

     

     

    2007年9月3日 上午 10:54
  •  

    checkbox與很多控制項都是繼承自System.Windows.Forms.ButtonBase,然後System.Windows.Forms.ButtonBase繼承自System.Windows.Forms.Control,所以他都可以被放到Controls這個集合內,不只TableLayoutPanel有Controls集合,很多地方也看得到,例如Windows Form本身也有. 一般你放入TableLayoutPanel事實上在Form的Controls內就有你的TableLayoutPanel物件,而你的TableLayoutPanel物件Controls集合內,又包有你給的控制項. 關鍵都是因為繼承自System.Windows.Forms.Control, Controls集合就是可以放這型態的相關物件
    2007年9月3日 下午 02:54

所有回覆

  • 不只是 TableLayoutPanel ,容器類 GroupBox、Panel ... 應該都需要自己轉型

     

    Code Snippet

    ((CheckBox) tableLayoutPanel1.Controls[0]).Checked

     

     

    2007年9月3日 上午 10:54
  •  

    checkbox與很多控制項都是繼承自System.Windows.Forms.ButtonBase,然後System.Windows.Forms.ButtonBase繼承自System.Windows.Forms.Control,所以他都可以被放到Controls這個集合內,不只TableLayoutPanel有Controls集合,很多地方也看得到,例如Windows Form本身也有. 一般你放入TableLayoutPanel事實上在Form的Controls內就有你的TableLayoutPanel物件,而你的TableLayoutPanel物件Controls集合內,又包有你給的控制項. 關鍵都是因為繼承自System.Windows.Forms.Control, Controls集合就是可以放這型態的相關物件
    2007年9月3日 下午 02:54
  • 感謝兩位大大~
    小弟了解了~^^~謝謝
    2007年9月5日 上午 03:27