博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
GridView中根据特殊标记设置不可编辑
阅读量:4072 次
发布时间:2019-05-25

本文共 710 字,大约阅读时间需要 2 分钟。

RT,今天初步解决了这个问题,解决还不是很好,下次改进。具体方法

 

public static void SetGridViewEditableState(GridView gv)

    {

        string temp = string.Empty;

        for (int i = 0; i < gv.Rows.Count; i++)

        {

            for (int j = 0; j < gv.Rows[i].Cells.Count; j++)

            {

                for (int k = 0; k < gv.Rows[i].Cells[j].Controls.Count; k++)

                {

                    try

                    {

                        temp = ((TextBox)gv.Rows[i].Cells[j].Controls[k]).Text;

                        if (double.Parse(temp) < 0)

                        {

                            gv.Rows[i].Cells[j].Enabled = false;

                        }

                    }

                    catch (Exception)

                    {

                    }

 

                }

            }

        }

    }

 

在这里对代码进行以下解释,我在这里是设置某个单元格为负数时不允许编辑。通过三层遍历找出,第一层遍历行,第二层遍历单元格,第三层遍历单元格中控件。

这里需要解释的是第三层,因为我们加入控件后,如果直接通过强制转换会出现错误

{"无法将类型为“System.Web.UI.LiteralControl”的对象强制转换为类型“System.Web.UI.WebControls.TextBox”。"}

这里可以解释参考:

解决的办法是再次遍历里面的控件,不管是不是,只管强制转换,异常不处理即可。找到之后将其enabled属性设置为false即可。

转载地址:http://fkwni.baihongyu.com/

你可能感兴趣的文章
mysql 跨机器查询,使用dblink
查看>>
mysql5.6.34 升级到mysql5.7.32
查看>>
dba 常用查询
查看>>
Oracle 异机恢复
查看>>
Oracle 12C DG 搭建(RAC-RAC/RAC-单机)
查看>>
Truncate 表之恢复
查看>>
Oracle DG failover 后恢复
查看>>
为什么很多程序员都选择跳槽?
查看>>
mongdb介绍
查看>>
Yotta企业云盘助力科技行业创高峰
查看>>
Yotta企业云盘更好地为教育行业服务
查看>>
Yotta企业云盘怎么帮助到能源化工行业
查看>>
企业云盘如何助力商业新发展
查看>>
医疗行业运用企业云盘可以带来什么样的提升
查看>>
媒体广告业如何运用云盘提升效率
查看>>
IOS开发的开源库
查看>>
IOS开发的开源库
查看>>
Jenkins - sonarqube 代码审查
查看>>
Jenkins + Docker + SpringCloud 微服务持续集成(一)
查看>>
Jenkins + Docker + SpringCloud 微服务持续集成 - 单机部署(二)
查看>>