我有一個用戶控件和一個贏取表單應用程序中的文本框。 我想使用visual studio的屬性窗口來更改該文本框的屬性。 我在同一個項目的各種形式中使用該控件,有可能嗎? 我已經設置文本框的修改財產公開,並設置以下的用戶控件屬性:提前帶有文本框的用戶控件
public TextBox mytextBox
{
get { return textBox1; }
set { textBox1 = value; }
}
感謝。
我有一個用戶控件和一個贏取表單應用程序中的文本框。 我想使用visual studio的屬性窗口來更改該文本框的屬性。 我在同一個項目的各種形式中使用該控件,有可能嗎? 我已經設置文本框的修改財產公開,並設置以下的用戶控件屬性:提前帶有文本框的用戶控件
public TextBox mytextBox
{
get { return textBox1; }
set { textBox1 = value; }
}
感謝。
這樣做的目的是什麼?你是否試圖讓「一個TextBox控件由多個表單共享」(這不太實際)。不過,您可以設置您的表單,以便通過單一更改來更新所有表單。
[TypeConverter(typeof(ExpandableObjectConverter))]
public TextBox mytextBox
{
get { return textBox1; }
set { textBox1 = value; }
}
注:
PropertyGrid
的角度看,設置器在這種情況下,沒有好處;已經分配的TextBox
的屬性正在被修改。TextBox
添加到UserControl
的控件集合中。如果您使用VS設計器創建TextBox
,則應該已經完成。如果您發現VS設計器方法InitializeComponents()
正在取消您的更改,請自行創建並添加控件。get;set;
模式以提高可讀性。
它有一個非常實際的用途,我創建了一個控件,它有一個文本框,以及其他一些按鈕和標籤,我在許多文檔中使用這個控件,但是在某些實現中,我希望文本框爲多行或者Backcolor改變了。 – Thunder 2010-08-16 07:14:51
那麼你想使用每個表單上已經存在的TextBox?怎麼樣擁有一個字符串屬性,以便您可以將其設置爲您要使用的TextBox的名稱,然後在運行時初始化後,找到控件並獲得引用。或者,你可以在控件中使用TextBox,並簡單地將要修改該文本框的屬性公開爲控件的屬性。後者可能更傳統。 – Swanny 2010-08-17 07:20:31