2017-07-13 35 views
0

私はXceed WPFプロパティグリッドコントロールを使用して、オブジェクトのプロパティとオブジェクトのコレクションを編集しています。私は、コレクションエディタに、下の画像に示すように、タイプを選択するオプションがあることに気付きました。ベースクラスから継承する複数の型を追加するにはどうすればよいですか?Xceed WPF Propertygrid - コレクションコントロール:複数のタイプ

たとえば、プレゼンテーションのクラスにはスライドのリストがあります。 Slide(メインのSlideクラス)から継承する複数のSlideタイプ(クラス)が存在する可能性があります。以下のコードを参照してください。アイデアは、プロパティグリッドをPresentationオブジェクト(Presentationクラス)にリンクすることで、Slidesコレクションが編集されると、Collection Editorは、「Select Type」コンボボックスで選択できるすべてのスライドタイプを利用できます。

これにより、1つのコレクションオブジェクト(List)に格納されているさまざまなスライドタイプをシームレスに追加できます。

どのように私はこの作品を作ることができますか?

Property Grid Collection Editor

public class Presentation 
{ 
    private List<Slide> _slides = new List<Slide>(); 
    [DisplayName("Slides List")] 
    [Description("Slides List")] 
    [Category("Presentation Content")] 
    [PropertyOrder(1)] 
    public List<Slides> slides 
    { 
     get 
     { 
      return (_slides); 
     } 
     set 
     { 
      _slides = value; 
     } 
    } 

    public class Slide 
    { 

     //Properties of slide 

    } 

    public class SlideType1: Slide 
    { 

     //Properties of slide type 1 
    } 

    public class SlideType2: Slide 
    { 

     //Properties of slide type 2 
    } 


} 

答えて

0

私は答えを見つけたように思えます!以下のコードを使用する必要があります。

[NewItemTypes(type 1(type 1)、typeof(Slide 2))]

関連する問題