[英]How to define default control properties?
我希望添加到其中一個表單的每個文本框看起來都一樣,並具有相同的屬性。 以文本框為例,我也希望將其用於按鈕和組合框。 我的問題是如何為每個控件定義一組默認屬性。 我也可以對表格進行處理嗎?
一種解決方案是通過從基本控件繼承並使用DefaultValue
屬性修飾屬性來創建自己的控件庫。 例如:
public class MyTextBox: TextBox
{
public MyTextBox()
{
Text = "Hi";
}
[DefaultValue("Hi")]
public new string Text
{
get
{
return base.Text;
}
set
{
base.Text = value;
}
}
在new
關鍵字用於因為屬性被重新定義。
為每個控件創建一個自定義類。 例如,如果您想要顯示“ hello world”的文本框,則可以使用它。
public class NewTextBox : TextBox
{
//The constructor, called for every new instance of the class.
public NewTextBox()
{
Text = "hello world";
}
}
然后要在您的表單中使用它,您需要像這樣調用一個新實例。
NewTextBox tb = new NewTextBox();//Create new text box
Controls.Add(tb);//Add text box to form.
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.