我在(UIElement)XamlReader.Load(...)中得到一个例外
'Cannot create unknown type 'TextBox'.' Line number '1' and line position '2'.
在以下xaml上:
<TextBox Name="inputMyFirstString" BorderThickness="0" HorizontalAlignment="Stretch" Text="test"></TextBox>
我错了什么?
答案 0 :(得分:4)
我认为,这是由于missing namespace。尝试
<TextBox xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" ...
答案 1 :(得分:4)
我知道这是一个老问题,但我认为&#34;对&#34;答案仍然缺失。 您可以通过在代码中添加所需的命名空间来避免更改XAML:
ParserContext context = new ParserContext();
context.XmlnsDictionary.Add("","http://schemas.microsoft.com/winfx/2006/xaml/presentation");
context.XmlnsDictionary.Add("x", "http://schemas.microsoft.com/winfx/2006/xaml");
//etc.
object content = XamlReader.Load(stream, context);
答案 2 :(得分:0)
将xmlns属性添加到XAML中的Window元素:
<Window xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" ...