none
如何列舉tabControl中的所有tabPages? RRS feed

  • 問題

  • 小弟有一個tabControl,裡面有多個tabPages(已預設好,非動態加入),假設為:

    tabPage1

    tabPage2

    ...

    tabPageN

     

    小弟想要讓使用者可以自訂tabControl中要使用的tabPage,即用兩個listBox列出「所有可用」及「目前使用中」的tabPages,並在使用者選完後動態改變。

    例:若我只想要tabPage<1-3>的功能,則選完後tabControl中只顯示tabPage<1-3>,其它不顯示

     

    因為tabControl似乎只能用Add及Remove來加入及移除,因此tabControl.tabPages裡的東西並不會是所有可用的tabPage?

    目前想到只能把tabPage的name一個一個手動列出來,但這樣相當不便,不知道有沒有較好的方法,來取得指定tabControl中的所有tabPages?

     

    還請各位先進指教


    zeus
    2011年9月14日 上午 07:33

解答

  • 宣告一個 List 去紀錄

            List<TabPage> RemoveTabPageList = new List<TabPage>();

    當移除時做紀錄

                tabControl1.TabPages.Remove(tabPage4);
                RemoveTabPageList.Add(tabPage4);

    當加回時做紀錄

                tabControl1.TabPages.Add(tabPage4);
                RemoveTabPageList.Remove(tabPage4);


    歡迎參觀我的Blog.NET菜鳥自救會
    • 已標示為解答 宙斯 2011年9月15日 上午 12:55
    2011年9月14日 上午 09:46
    版主
  • FAQ

    http://social.msdn.microsoft.com/Search/zh-TW/?Refinement=112&query=TabControl%20%e9%9a%b1%e8%97%8f


    論壇是網友平等互助 保證解答請至 微軟技術支援服務
    提問時,錯誤情境描述與錯誤訊息很重要,情境描述包含你做了什麼,預期的結果與實際發生的結果。一個最爛的問法範例:「我的電腦電腦怎麼不能開機?」誰知道你家是不是沒電還是你根本找不到電源鈕。
    • 已標示為解答 宙斯 2011年9月15日 上午 12:55
    2011年9月14日 下午 12:32

所有回覆

  • 宣告一個 List 去紀錄

            List<TabPage> RemoveTabPageList = new List<TabPage>();

    當移除時做紀錄

                tabControl1.TabPages.Remove(tabPage4);
                RemoveTabPageList.Add(tabPage4);

    當加回時做紀錄

                tabControl1.TabPages.Add(tabPage4);
                RemoveTabPageList.Remove(tabPage4);


    歡迎參觀我的Blog.NET菜鳥自救會
    • 已標示為解答 宙斯 2011年9月15日 上午 12:55
    2011年9月14日 上午 09:46
    版主
  • 感謝您的指導,

    所以目前的做法會是,在Form_load時(對TabControl執行add,remove前),先將所有的tabPage記錄在List中,然後有新增移除的時候,再更新List。

     

    還是想小小抱怨一下,為什麼tabPage沒有Hide可以用………,有的話就不用這樣了


    zeus
    2011年9月14日 上午 10:07
  • FAQ

    http://social.msdn.microsoft.com/Search/zh-TW/?Refinement=112&query=TabControl%20%e9%9a%b1%e8%97%8f


    論壇是網友平等互助 保證解答請至 微軟技術支援服務
    提問時,錯誤情境描述與錯誤訊息很重要,情境描述包含你做了什麼,預期的結果與實際發生的結果。一個最爛的問法範例:「我的電腦電腦怎麼不能開機?」誰知道你家是不是沒電還是你根本找不到電源鈕。
    • 已標示為解答 宙斯 2011年9月15日 上午 12:55
    2011年9月14日 下午 12:32