同一个DataGrid中 有很多行,每一行都有10个label怎样做到: 点个按钮时,把所有行的全部label都变成 TextBox ,记住,不是一行,而是所有行。
不能画2个DATagrid,只能是一个。。EditIndex 只能控制一行可以编辑, 怎么实现多行阿?

解决方案 »

  1.   

    修改每行每个控件的visible属性
    foreach ( datagriditem a in datagrid1.items )
    {
       textbox b1 = (textbox)a.findcontrol("aaaa");
       b1.visible = true;
    }
      

  2.   

    回楼上的不行啊
    本来就是visible=true的哦
      

  3.   

    1 DATAGRID第一列弄个自动的序列号(1.....5..XX) 或你的表里已经有自动序列好就更方便,显示出与否无所谓2 你那十个列用的都是摸版列,在LABEL边上加个TEXTBOX 初始化时候 VISIBLE=FALSE3 当选种一行的BUTTON 时候 先记下第一列的序列号,重新刷新DATAGRID
    在DATABOUND事件里写If e.Item.ItemType = ListItemType.AlternatingItem Or e.Item.ItemType = ListItemType.Item Then
      IF E.ITEM.CELL(O)=序列号 THEN
        CTYPE(E.ITEM.FINDCONTROL("ID TEXTBOX"),TEXTBOX).VISIBLE=TRUE
        CTYPE(E.ITEM.FINDCONTROL("ID LABEL"),LABEL).VISIBLE=FALSE
      END IFEND IF
    以上方法是比较简单的一种,肯定能用,还有一个方案是动态生成TEXTBOX应该可以但我没试过
    再或者你可以牵套一个USERCONTROL来做弄个控件