我有一个在 xaml 中描述的动态 WPF UI。
可以在下面看到 xaml。我的问题是我的自定义命名空间没有自动解析,
要加载 xaml,我必须将每个程序集及其命名空间设置为解析器上下文,如下所示
var context = new ParserContext();
context.XamlTypeMapper = new XamlTypeMapper(new string[] { });
context.XmlnsDictionary.Add("Custom","http://myCompany.de");
context.XamlTypeMapper.AddMappingProcessingInstruction("http://myCompany.de","FooNamespace","FooAssemblyName");
没有更好的方法吗?我需要这个动态。而且我不想扫描应用程序域。
这是如何在普通的“System Xaml Reader”中完成的?
<UserControl
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:Custom="http://myCompany.de"
x:Class="Foo.Container"
mc:Ignorable="d"
d:DesignHeight="300" d:DesignWidth="300">
<UserControl.DataContext>
<Custom:FooViewModel/>
</UserControl.DataContext>
<Grid>
</Grid>
</UserControl>