2008-09-16 73 views

回答

4

要在用戶選擇屬性網格值時添加自己的自定義編輯,您需要實現從UITypeEditor派生的類。然後,您可以選擇在屬性區域下方顯示一個小的彈出窗口或完整的對話框。

好的是你可以重用現有的實現。因此,要增加多編輯字符串你只是這樣做的能力...


     [Editor(typeof(MultilineStringEditor), typeof(UITypeEditor))] 
     public override string Text 
     { 
      get { return _string; } 
      set { _string = value; } 
     } 

他們爲您提供的另一個不錯的一個是編輯字符串數組的能力...


     [Editor("System.Windows.Forms.Design.StringArrayEditor, 
     System.Design, Version=2.0.0.0, 
     Culture=neutral, 
     PublicKeyToken=b03f5f7f11d50a3a", 
     typeof(UITypeEditor))] 
     public string[] Lines 
     { 
      get { return _lines; } 
      set { _lines = value; } 
     } 
+0

謝謝。那太完美了! 除了typeof(UITypeEditor)之外,你可以使用「System.Drawing.Design.UITypeEditor,System.Drawing,Version = 2.0.0.0,Culture = neutral,PublicKeyToken = b03f5f7f11d50a3a」 發現一些編譯錯誤 – 2008-09-17 17:56:15

1

您可以控制PropertyGrid是顯示簡單編輯框,下拉箭頭還是省略號控件。

查找EditorAttribute,並從那裏按照它。我確實有一個樣本;我會盡力挖掘出來。

相關問題