使用带ParserContext参数的Xaml.Load方法

本文介绍如何使用ParserContext类来处理XAML中的外部命名空间。通过实例演示了如何设置XmlnsDictionary和XamlTypeMapper,以及如何利用这些设置来解析XAML字符串。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

如果一段XAML中存在一个标记需要从外部命名空间中解析, 就需要用到ParserContext类,  具体用法如下:


ParserContext pc = new ParserContext ();

      pc.XmlnsDictionary.Add("" , "http://schemas.microsoft.com/winfx/2006/xaml/presentation" );

      pc.XamlTypeMapper = new XamlTypeMapper (new string [0]);

      pc.XamlTypeMapper.AddMappingProcessingInstruction(

        "http://schemas.microsoft.com/winfx/2006/xaml/presentation" ,

        "ClassLibrary1" ,

        "ClassLibrary1" );


      object o = XamlReader .Parse("<SharedResourceDictionary Source=/"pack://application:,,,/KeyOfVictory;component/Dictionary1.xaml/"/>" , pc);

 


XmlnsDictionary属性中存储XML命名空间和命名空间前缀的对应关系, XamlTypeMapper类型中存储XML命名空间和CLR命名空间的对应关系, 并且还存储了定义CLR命名空间的程序集名称, 需要注意的是程序集名称就是程序集的partial name, 不需要有dll后缀。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值