平常开发过程中,我们自定义的控件/组件,在使用的过程中,都需要加上命名空间的前缀,否则的话编译就会出错。
这让我们开发过程中,就显得比较麻烦。那有没有方法可以省去这个前缀呢?跟框架自带的组件一样使用?
方法比较简单,就是在我们程序集的声明中,增加如下声明。
[assembly: XmlnsDefinition(“http://schemas.microsoft.com/winfx/2006/xaml/presentation”,”命名空间”, AssemblyName = “程序集名称”)]
这个声明在AssemblyInfo.cs
文件中
如果是使用dotnet core
或者Microsoft.NET.Sdk
,可以通过 AssemblyInfo
,手动来创建这个文件。
使用前
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:ui="clr-namespace:xxxxx.UI"
<Grid ui:XXXProperty.XXX="aaa">
</Grid>
使用后,
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
//xmlns:ui="clr-namespace:xxxxx.UI"
<Grid XXXProperty.XXX="aaa">
</Grid>
通过这种方式,我们的编码效率又能得到小步提升了。
这里需要注意下,因为改逻辑是放在AssemblyInfo.cs
文件中,使用之前,一定要记得先编译下这个库才会有智能提示出来。
欢迎转载分享,如若转载,请标注署名。
博客链接1:https://huchengv5.gitee.io/
博客链接2:https://huchengv5.github.io/
微信公众号:
本文会经常更新,请阅读原文: https://huchengv5.gitee.io//post/WPF-Xaml%E6%96%87%E4%BB%B6%E5%A6%82%E4%BD%95%E7%9C%81%E5%8E%BB%E5%91%BD%E5%90%8D%E7%A9%BA%E9%97%B4%E7%9A%84%E5%89%8D%E7%BC%80.html ,以避免陈旧错误知识的误导,同时有更好的阅读体验。
本作品采用 知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议 进行许可。欢迎转载、使用、重新发布,但务必保留文章署名胡承(包含链接: https://huchengv5.gitee.io/ ),不得用于商业目的,基于本文修改后的作品务必以相同的许可发布。如有任何疑问,请 与我联系 。