0

ロッドのリストを持つコントロールがあります。Rods にはいくつかのパブリック プロパティがあります。


    public class Rod
    {
        float Angle { get; set; }
        Color MainColour { get; set; }
        int Length { get; set; }
        int Width { get; set; }
        //other private code here you need not be concerned with ;)
    }

Rod をホストするコントロールでは、リストは次のように宣言されます。

public List<Rod> Rods { get; set; }

RodsHost コントロールを選択して [Rods] プロパティ ページをクリックし、フォーム デザイナー GUI を使用してそのコントロールの Rods を編集できるようにしたいと考えています。現在、ロッドをリストに追加することはできますが、ロッドのプロパティ (Angle、MainColour など...) を編集することはできません。Rods クラスに属性[DesignTimeVisible(true)]を適用しようとしましたが、うまくいかないようでした。Designer 属性を使用する必要があるのではないかと考えましたが、ここで必要な Designer クラスがわかりません。誰か提案がありますか?

4

2 に答える 2

1

これが役立つかどうかはわかりませんが、私がしたことはuserControlを作成し、その中でプロパティを設定として作成しました。プロパティは、ビジュアル IDE の [プロパティ] ペインに自動的に表示されます。

于 2009-10-30T02:38:35.853 に答える
1

リストを次のように装飾する必要があるようです。

[DesignerSerializationVisibility(DesignerSerializationVisibility.Content)]

コンストラクターを追加して、適切なデフォルト値を設定します。

于 2009-11-06T01:56:51.093 に答える