2010-11-14 70 views
2

我想在不从容器中删除它的子控件的情况下删除父控件(这种情况下是跨度)。我怎么能在asp.net c#中完成这个任务?如何在不删除asp.net c#中的子项的情况下删除父控件?

,你可以在这里看到的代码:http://pastebin.com/9NiriWXN

注:我可以很容易地找到“newsright”控制和返回其父(这是跨度在这种情况下)

+0

也许只是先将所有的孩子重新分配给其他控制,然后删除跨度控制。 – Danil 2010-11-14 18:18:46

+0

我尝试过Danil – 2010-11-14 19:04:10

回答

2

你需要得到子女优先和父母控制的父母,然后将孩子添加回父控制的父母。

+0

Control newsControl = FindChildControl(this,“newsright”); 控制tempControl = newsControl; 控制grand = newsControl.Parent.Parent; int indexatnewparent = newsControl.Parent.Parent.Controls.IndexOf(newsControl.Parent); grand.Controls.RemoveAt(indexatnewparent); grand.Controls.AddAt(indexatnewparent,tempControl); – 2010-11-14 19:01:21

+0

在DataBind,Init,Load,PreRender或Unload阶段无法修改控件集合。由于此代码位于On_Load()中,因此我收到了此消息 – 2010-11-14 19:25:57

相关问题