我有个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的数据可以被编辑
解决方案 »
- PagedDataSource 分页程序每一次都加载DataTable数据源,这样效率高吗?
- md5求助
- 新手求助!在线急等!
- 硬件高,外观酷,软件强,价格低,工业设计精...一款超越苹果iphone的手机!
- 有几个问题不大懂
- 不装flash,网页中swf文件是否能够运行
- 救命啊,控件无法触发事件啊...
- 关于安装程序打包Framework的问题给高分!!!!!!!!!
- 各位请帮忙!!!在线ing。.......
- 无法将类型为“System.Data.DataView”的对象强制转换为类型“System.Data.SqlClient.SqlDataReader”。
- 应该是挺简单的,可...
- 点后退让网页显示已过期,怎么实现啊???????????????
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列可以编辑,别的都为只读