所以對於一個用戶控件,我有如何在C#中將屬性設置爲默認值?
public int Count { get; set; }
,這樣我可以在另一種方法中使用this.Count
。麻煩的是,我想爲Count設置一個默認值,如15
。我如何設置默認值?
所以對於一個用戶控件,我有如何在C#中將屬性設置爲默認值?
public int Count { get; set; }
,這樣我可以在另一種方法中使用this.Count
。麻煩的是,我想爲Count設置一個默認值,如15
。我如何設置默認值?
在用戶控件
構造public YourUserControl(){
Count = 15;
}
很酷。當我從長遠來看有一堆默認值時,這將會很乾淨。 – tester 2011-06-03 23:14:15
您需要將其設置在類的構造函數中。
例如:
public partial class YourControl : UserControl
{
public int Count { get; set; }
public YourControl()
{
InitializeComponent();
// Set your default
this.Count = 15;
}
}
替代地,如果使用一個支持字段,則可以將其設置內嵌場上:
public partial class YourControl : UserControl
{
private int count = 15;
public int Count
{
get { return this.count; }
set { this.count = value; }
}
如果您想要創建控件的對象l設置默認值,然後他們可以在新控件時使用屬性初始值設定項。如果你想爲控件設置默認值,那麼你可以在構造函數中設置這些默認值。
您可以在類的構造函數中設置自動屬性的默認值。
public MyClass()
{
Count = 15;
}
或備選地在構造函數中設置的值,它可能會工作得很好,在這裏,使用長方法。
int _count = 15;
public int Count {
get { return _count; }
set { _count = value; }
}
有時,如果適當的構造函數是不叫出於某種原因(如一些序列化/激活技術)這種方式是非常有用的。
快樂編碼。
而不是使用自動實現的屬性,你可以根據你的包含默認值的基礎字段寫你自己的財產:
private int _count = 15;
public int Count
{
get { return _count; }
set { _count = value; }
}
可以使用DefaultValueAttribute。這裏更多的信息:http://msdn.microsoft.com/en-us/library/system.componentmodel.defaultvalueattribute.aspx
這個問題是可能重複:How do you give a C# Auto-Property a default value?
這並沒有設置默認值:(我以爲它曾經做過,並且發現了我不正確的方式,而是用於允許序列化技術(以及這種方法)*不序列化默認值和從而節省空間(例如'[DataMember(EmitDefault = false)]'),它也用於設計者的「重置」值等。 – 2011-06-03 23:11:31
@pst:你說得對,我只是看到了細節......對Visual Studio中的可視化設計器也有幫助。 – Hasanain 2011-06-03 23:23:18
你就不能設置「計數」,以在初始化時默認值? – 2011-06-03 23:07:54
可能的重複[你如何給C#自動屬性一個默認值?](http://stackoverflow.com/questions/40730/how-do-you-give-ac-sharp-auto-property-a-默認值) – nawfal 2014-07-17 21:19:52