操纵面板内的控件属性

本文关键字:控件 属性 操纵 | 更新日期: 2023-09-27 17:52:16

我正在用c#编写一个桌面应用程序。Net和win窗体,我想使一系列文本框在form load中只读,下面的代码不能在formloa上工作,但它适用于窗体中的所有文本框。

        foreach(Control ctrl in this.Controls)
        { 
            if(ctrl is TextBox)
            {
                TextBox textbx = ctrl as TextBox; 
                if(textbx.ReadOnly == false)
                {
                    textbx.ReadOnly = true; 
                }
            }
        }            

,但我想操纵那些文本框里面在我的Form1容器。我该怎么做呢?
}

操纵面板内的控件属性

你在循环遍历Form1中的每个控件所以你当然会在循环中得到所有的文本框。

如果你把你的文本框放在一个容器里,比如组框,那么你可以在foreach中使用组框,而不是整个Form1对象。

在你的表单上有一个组框控件里面有你想要设置为只读的文本框

foreach(Control ctrl in myTextBoxContainer.Controls)
        { 
            if(ctrl is TextBox)
            {
                TextBox textbx = ctrl as TextBox; 
                if(textbx.ReadOnly == false)
                {
                    textbx.ReadOnly = true; 
                }
            }
        }