2009-05-29 81 views

回答

1

MSDN表示確實表示可以重新使用屬性編輯器而無需每次重新創建。

這是一個性能的勝利,尤其是如果您的編輯需要在啓動時做大量的工作,這是可以避免的。除非你實際上有性能問題,那麼我不會擔心它。

0

如果你不知道它做了什麼,爲什麼你需要使用它?你目前有沒有使用它的代碼可以作爲例子發佈?

聽起來好像它允許您定義屬性的屬性編輯器可以重新使用而無需重新啓動。我不確定爲什麼這會有用。

1

想象你的情況是這樣的:

class Complex 
{ 
    public OtherComplex1 Property1 { get; set; } 
    public OtherComplex2 Property2 { get; set; } 
    public OtherComplex2 Property3 { get; set; } 
    ..... 
    public OtherComplexN PropertyN { get; set; } 

} 

您能的每個都有自己的類型的設計師,這顯示一些性能等

說,你有複雜類的兩個不同的實例+其他一些任意類的實例。

現在,當您在對象之間進行切換這樣的 - 複雜的情況下,第1 - >其他 - >複雜的情況下2 - 一切都將正常工作,但如果你做這樣的事情:

複雜的情況下,第1 - >複雜實例2,你會注意到屬性不會刷新。

屬性網格的默認行爲,它嘗試優化數據刷新操作的數量。除非你想烘烤很多邏輯以保持設計者的更新,否則我會建議使用編輯器重用屬性設置爲false來標記你的complexTypes - 在這種情況下,只要選擇改變爲不同的實例,屬性網格仍然會刷新你的設計師。