• ASP.NET如何遍历Panel控件内的子控件
  • 发布于 2个月前
  • 132 热度
    2 评论
  • 黑加仑
  • 2 粉丝 7 篇博客
  •   
我现在开发一个系统,里面有一个提交申请信息的表单页面,各种文本框,下拉框的控件加起来大概有50几个(都放在同一个Panel内),现在用户要求在审批状态打开该表单时,只能有其中的3个控件是可读写的,其它的控件的状态都要设置为Enable=false(就是不可编辑),现在因为控件数量太多了,我不想一个个控件去设置Enable=false属性,想从后台直接遍历这个Panel内的所有控件,把不属于那三个控件的所有控件的Enable属性都设置成false,这个功能要怎么实现?
用户评论
  • 马赛克
  • 给你一个简单的遍历子控件的例子:

            protected void SetControlReadOnly()
            {
                string[] notIncludedControl = new string[] { "ddlSupplierCategory", "ddlGoodsClass", "ddlSubGoodsClass" };
                foreach (var item in pnlWrap.Controls)
                {
                    if (item.GetType() == typeof(DropDownList))
                    {
                        DropDownList ddlControl = (DropDownList)item;
                        if (notIncludedControl.Contains(ddlControl.ID) == false)
                        {
                            ddlControl.Enabled = false;
                        }
                    }
                    if (item.GetType() == typeof(TextBox))
                    {
                        TextBox txtBox = (TextBox)item;
                        txtBox.Enabled = false;
                    }
                }
            }


  • 2018/6/12 13:42:00 [ 1 ] [ 0 ] 回复