DetailsView自带的删除按钮,这个删除代码怎么写,按下后还要弹出一个确认对话框

发布时间:2024-05-22 22:55 发布:上海旅游网

问题描述:

谢谢, 再问一下,我只想对某一个字段能编辑,怎么实现,比如我做的是相册,上面显示的是照片,这个不能,下面是对照片的描述,这个可以编辑。。。。。。。。我追加分
--------------------------------------------------------
啊呀报错了: 无法将类型为“System.Web.UI.LiteralControl”的对象强制转换为类型“System.Web.UI.WebControls.LinkButton”。
------------------------------------------------------
我去掉了编辑按钮,上面的错误没了,按删除的时候又报错了:System.NotSupportedException: 除非指定了 DeleteCommand,否则数据源“SqlDataSource1”不支持删除操作。
我是把这个控件绑定到一个数据源的,,,,DeleteCommand这个什么意思呀

问题解答:

protected void DetailsView1_ItemCreated(object sender, EventArgs e)
{
int c = DetailsView1.Controls[0].Controls.Count;
LinkButton b=(LinkButton)DetailsView1.Controls[0].Controls[c-2].Controls[0].Controls[0];
b.Attributes.Add("onclick", "return confirm('sure?')");
}
若启用了编辑,将最后一个Controls[0]改为Controls[1]。
*************************************
原理和其它控件的一样,难度在于DetailsView的删除按钮如何找到。
你的报错,就是因为找错了。
DetailsView1.Controls[0]是将会生成一个HTML的Table;
DetailsView1.Controls[0].Controls[c-2]则是指Table中的倒数第二行,即包含删除按钮的那行,你可以改成c-1,或c-3试试,默认就是c-2;
DetailsView1.Controls[0].Controls[c-2].Controls[0]是指上述行中的单元格cell,它是删除按钮的父元素;
DetailsView1.Controls[0].Controls[c-2].Controls[0].Controls[0]就是指单元格中的第一个按钮了,如果没有编辑按钮,就是指删除按钮了。
你没找对。可以看看浏览器中的“查看源文件”

热点新闻