這裏是我在將一個FrameworkElement附加到一個新窗口以將其發佈到PNG文件時出現的錯誤。指定的元素已經是另一個元素的邏輯子元素。首先將它斷開
所以我的想法是消除親子環節,叫我的方法,以及與此代碼再添加子:
this.RemoveLogicalChild(element);
PublishFrameworkElement(element, stream);
this.AddLogicalChild(element);
但我得到了確切的同樣的錯誤......
我看了很多關於這個錯誤的問題,在這裏,但沒有回答我的問題 我錯過了什麼?
編輯:這裏是爲我工作的代碼:
var element = _GeneratedContent as FrameworkElement;
var ParentPanelCollection = (element.Parent as Panel).Children as UIElementCollection;
ParentPanelCollection.Clear();
FileStream stream = [...]
if (element != null)
{
PublishFrameworkElement(element, stream);
ParentPanelCollection.Add(element);
}
stream.Close();
這幫了我!我在我編輯的問題中發佈了代碼:) – 2012-02-02 10:44:24
會設置爲空,斷開連接事件? – Rauld 2012-08-30 14:49:49
不,您還必須刪除任何事件處理程序。 – Clemens 2012-08-30 14:57:45