我寫了一個WPF控件,它接受許多UIElement對象作爲輸入,並顯示它們垂直或水平停靠。該控件公開了用於枚舉,刪除和插入子項的函數,但是在內部,我使用網格來構建佈局,爲每個項目創建一個行/列並在它們之間插入一個GridSplitter。要做到這一點,我已經繼承了ContentControl,並且在初始化時我只是使用Grid來設置Content屬性。一切都按預期工作,但是現在我想知道這是否會讓我的控件用戶感到困惑,因爲擁有多個項目的ContentControl是違反直覺的。我應該繼承哪些WPF控件?
應該從ItemsControl繼承嗎? 我應該直接從「內容不可知」的Control繼承嗎? 有沒有更好的方法來做到這一點?
在此先感謝。
同意。 Panel具有接受任意數量的孩子而不僅僅是像ContentControl這樣的單個孩子的額外好處。 –