XamlReader.Load(..)时发生异常

elC*_*ano 4 c# xaml

在(UIElement)XamlReader.Load(...)期间出现异常

'Cannot create unknown type 'TextBox'.' Line number '1' and line position '2'.
Run Code Online (Sandbox Code Playgroud)

在以下xaml上:

<TextBox Name="inputMyFirstString" BorderThickness="0" HorizontalAlignment="Stretch" Text="test"></TextBox>
Run Code Online (Sandbox Code Playgroud)

我怎么了

Ant*_*lev 5

我认为,这是由于缺少 namespace。尝试

<TextBox xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" ...
Run Code Online (Sandbox Code Playgroud)


Man*_*mer 5

我知道这是一个古老的问题,但我认为仍然缺少“正确”的答案。您可以通过在代码中添加所需的名称空间来避免更改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);
Run Code Online (Sandbox Code Playgroud)