我有个datagrid,是模版列的
模版列1 模版列2 模版列3 模版列4 模版列5 模版列6
1 12 123 1234 12345 123456
2 23 234 2345 23456 234567我想在页面上点击一个button按钮后来触发事件,使这个datadrid的模版列4的数据可以被编辑
模版列1 模版列2 模版列3 模版列4 模版列5 模版列6
1 12 123 1234 12345 123456
2 23 234 2345 23456 234567我想在页面上点击一个button按钮后来触发事件,使这个datadrid的模版列4的数据可以被编辑
解决方案 »
- “/”应用程序中的服务器错误。急急~~~~~~~~~~~~~~~~~~~~~~~
- 需要写一个党员投票的网页,急用!
- 如何判断TcpListener监听连接请求
- 先谢谢。VS运行编译通过,但数据库写不进去
- 简单关于dropdownlist对列表的更新
- form验证IsInRole返回TRUE,但是进入子页面就跳回login
- 很奇怪:gridview 删除提示的问题
- 模式窗口返回数据,页面刷新后消失,怎么解决?在线等!
- 请救一个gridview控件HyperLinkField的问题!
- 如何修改XML中指定节点的值
- 应该是挺简单的,可...
- 点后退让网页显示已过期,怎么实现啊???????????????
datagrid本来就可以支持编辑功能,但我不明白你的按钮是在datagrid的行里面的按钮列还是在datagrid之外的普通按钮?
如果在里面,直接用它的编辑功能就是了
如果在外面,想使整列可被编辑,这个就跟模板列没有关系.你可以在列4上直接放文本框,默认不可写,点击按钮时,循环datagrid的每一行,得到此文本框,将它的只读去除,这样它就可编辑了.
想用datagrid本身的编辑功能使一整列都可编辑是无法实现的.
<asp:TextBox id="TextBox1" ReadOnly=true ....
点击按钮后,在按钮事件里面
for(int i=0;i<this.DataGrid1.Items.Count;i++)
{
TextBox TextBox1 = (TextBox)this.DataGrid1.Items[i].FindControl("TextBox1");
TextBox1.ReadOnly = false;
}
这样,此列的所有行都可以进行编辑
不过,你是想使此列的所有行都可编辑,还是只编辑某行的此列?
{
TextBox TextBox1 = (TextBox)this.DataGrid1.Items[i].FindControl("TextBox1");
if(i=4)
{
TextBox1.ReadOnly = false;
}
else
{
TextBox1.ReadOnly = true; }
}
//只有第4列可以编辑,别的都为只读