可能性の重複:
Setting the default value of a DateTime Property to DateTime.Now inside the System.ComponentModel Default Value Attrbute設定デフォルト値
イムカレンダーなどのコントロールを作成する、と私は、ユーザーが、彼らが見たいデ年を設定します。 しかし、そうでない場合、SelectedYearのプロパティは実際の年でなければなりません。
私はこのように、このデフォルト値を設定してみてください:
[DefaultValue(DateTime.Today.Year)]
public int SelectedYear{
get{
return _selYear;
}
set{
_selYear = value;
UpdateCalendar();
}
}
そして、私はまあ、誤差がかなり明確で、次のエラー
An attribute argument must be a constant expression, typeof expression or array creation expression of an attribute parameter type
これはその属性のためのものではありません。クラスのデフォルトのctorにデフォルトのプロパティ値を設定することは、一般的なオプションの1つです。 – asawyer
これはデザイナのデフォルト値です。つまり、コントロールに指定された年の値がある場合、値はプロパティウィンドウで太字になりません。プロパティ値には影響しません。 –
コントロールを構築している場合は、コンストラクターのデフォルト値を設定するとよいでしょう。 – jags