2
默認情況下,我已將所有TextBoxs.readOnly = true;
設置爲表單。 但是當單擊Edit Button
時。 我想讓它所有的TextBoxs.readOnly = false;
在WinForm上點擊按鈕後設置多個文本框可編輯
我試過了;
private void btnEdit_Click(object sender, EventArgs e)
{
foreach (var textBox in this.Controls.OfType<TextBox>())
textBox.ReadOnly = false;
}
每個TextBox
都有一個唯一的名稱。 最簡單的方法就是在下面。但我不想這樣做。
txtName.ReadOnly = false;
txtAddress.ReadOnly = false;
...
通過這種方法,你可以設置直接放置在你的形式只是'TextBoxes'不是那些內像「GroupBox」或「Panel」這樣的另一個容器。你需要一個遞歸的方法來達到這個目的:http://stackoverflow.com/a/34676012/2946329 –
所有的'TextBoxes'都在一個'GroupBox'裏面 – AndroidAL
@ user2946329是對的,但我更喜歡[this ](http://stackoverflow.com/a/3426721/1997232)遞歸方法或僅保存專用數組中的控件引用。如果控件位於同一個容器內,那麼用該容器實例替換'this'(在你的情況下是'GroupBox')。 – Sinatr