在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 :(得分:0)
new XAttribute("xmlns", "http://http://www.adventure-works.com")
只需将其添加为XAttribute。