codice:
public void SetReadOnly(System.Windows.Forms.Control Container, bool State)
{
    foreach (System.Windows.Forms.Control ctrl in Container)
    {
        if(ctrl Is System.Windows.Forms.TextBoxBase)
            ((System.Windows.Forms.TextBoxBase)ctrl).ReadOnly = State;
        if(ctrl.HasChildren)
            SetReadOnly(ctrl.Controls, State);
    }
}
Uso:
codice:
SetReadOnly(this,true); //per rendere tutti i controlli TextBox del form di sola lettura
SetReadOnly(this,false); //per rendere tutti i controlli TextBox del form modificabili
.