请问datagrid如何控制编辑状态下的列的宽度?在属性生成器中设置了列的宽度,但是到了编辑模式下宽度就全部变掉了很丑。在哪地方有没有设置编辑状态下的列的宽度的?

解决方案 »

  1.   

    //修改编辑状态下文本框的长度(ItemDataBound方法是数据绑定时要执行的方法)
        protected void dg1_ItemDataBound(object sender, DataGridItemEventArgs e)
        {
            if (e.Item.ItemType == ListItemType.EditItem)
            {
                for (int i = 0; i < e.Item.Cells.Count; i++)
                {
                    if (e.Item.Cells[i].Controls.Count > 0)
                    {
                        try
                        {
                            TextBox t = (TextBox)e.Item.Cells[i].Controls[0];
                            t.Width = 80;//修改宽度
                        }
                        catch (Exception eee)
                        {
                        }
                    }
                }
            }
        }