因此,我正在構建一個UI,讓我可以在對話窗口中查看,也可以嵌入更大頁面的一部分。我在WPF中沒有太多的經驗,但是在ASP.NET中你總是使用UserControls,因爲他們並不是真正的通用UI繼承來繼承(並且UserControl只是一個div)。我應該從堆棧面板而不是堆棧面板,網格或其他UI元素或UserControl繼承嗎?
我的同事寫了很多直接從堆棧面板繼承的控件。這似乎是一種體面的做事方式。但是當我去創建一個我要寫的代碼的控件時,我得到了一個只包含UserControl的對話框,在WPF的上下文中我不太熟悉它。
那麼有人可以向我解釋從構建從用戶控件繼承的控件與直接從stackPanel繼承的控件的區別嗎?
自定義控件不直接關於可重用性 - 自定義控件是關於*模板*的,即控件的消費者改變其視覺外觀的能力。我認爲這提高了可重用性,因爲它意味着只要行爲保持適當,消費者就可以將控件用於更廣泛的顯示工作,但這是我認爲值得確認的特定形式的可重用性。 (從某種意義上講,這意味着自定義控件不容易被「密封」,因爲它們必須應付用戶對它們施加任意可見的樹木)! – itowlson 2010-03-28 03:03:55