4

カスタムC#コントロールプロパティを設定しようとしています。

これが私のコードです:

/* Cancel's button text */
[Category("ComboTouch"),
Description("Text to display in cancel button"),
DefaultValue("Cancel")]
public String ct_cancelButtonText { get; set; }

他のプロジェクトでカスタマイズされたコントロールを使用すると、プロパティを取得できます(画像で確認できます)。しかし、構成パラメーターDefaultValueは機能していないようです。

誰か助けてもらえますか?どうもありがとうございます。

カスタムコントロールのプロパティ

2013年1月10日更新。答えてくれてありがとう、あなたは私の問題を解決しました。

最終的にデフォルト値を自動的に設定する方法を共有したいと思います。

  private String m_cancelButtonText="Cancel";

    /* Cancel's button text */
    [Category("ComboTouch"),
    Description("Text to display in cancel button"),
    DefaultValue("Cancel")]
    public String ct_cancelButtonText
    {
        get
        {
            return m_cancelButtonText;
        }
        set
        {
            m_cancelButtonText = value;
        }
    }

好奇心の1つ:「キャンセル」テキストの形式を確認してください。DefaultValueタイプを設定した場合; 通常のテキストのように見えます。しかし、そうでない場合は、太字のテキストのように見えます。私はそれがばかげていることを知っています。でもなぜそうなのか知りたいです。ありがとうございました。

ここに画像の説明を入力してください

4

1 に答える 1

4

ドキュメントに記載されているように:

DefaultValueAttribute によって、メンバーが属性の値で自動的に初期化されることはありません。コードで初期値を設定する必要があります。

于 2013-01-09T12:52:53.610 に答える