2008-12-22 138 views
1

在Silverlight中,當你想動態創建一個控制,你必須添加的命名空間是這樣的(如http://msdn.microsoft.com/en-us/library/cc189044(VS.95).aspx):加載用戶控制和默認命名空間

XNamespace xmlns = "http://schemas.microsoft.com/client/2007"; 
    XElement textBlock2 = new XElement(xmlns + "TextBlock", 
     new XAttribute(XNamespace.Xmlns + "x", "http://schemas.microsoft.com/winfx/2006/xaml"), 
     ... 
     ); 

我的問題是,我有一個用戶在自己的命名空間的控制,所以我必須寫類似

XNamespace myxmlns = "mynamespace"; 
XElement myelem = new XElement(myxmlns + "MyCtrl", ... 

然後我可以添加別名命名空間一樣,

new XAttribute(XNamespace.Xmlns + "x", "http://schemas.microsoft.com/winfx") 

但我不知道如何添加默認命名空間。無論我嘗試什麼,我都會收到編譯錯誤或運行時錯誤(「AG E PARSER MISSING DEFAULT NAMESPACE」)。

我成功地完成了構建我所需要的一大串字符串,但我想了解我錯過了什麼。

有什麼想法?

謝謝。

回答

0

XNamespace docs here

new XAttribute("xmlns", "http://http://www.adventure-works.com") 

只需將其添加爲XAttribute。

+0

謝謝,太簡單了......我喜歡Linq到Xml,但是XNamespace對我來說並不那麼直觀。 – devMomentum 2008-12-25 21:25:35