加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c# – 自定义项目中的自定义XAML设计器类型Visual Studio

发布时间:2020-12-15 07:51:41 所属栏目:百科 来源:网络整理
导读:我创建了一个自定义XAML设计器作为 http://code.msdn.microsoft.com/windowsdesktop/Designer-View-Over-XML-20a81f17我有一个问题:如何使自定义设计器仅适用于某些类型的项目(例如自定义类型的项目),以及默认情况下使用的所有其他项目设计器. 在文件VsTemp
我创建了一个自定义XAML设计器作为 http://code.msdn.microsoft.com/windowsdesktop/Designer-View-Over-XML-20a81f17我有一个问题:如何使自定义设计器仅适用于某些类型的项目(例如自定义类型的项目),以及默认情况下使用的所有其他项目设计器.

在文件VsTemplateDesignerPackage.cs中有:

// Microsoft Visual Basic Project
[EditorFactoryNotifyForProject("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}",EditorFactory.Extension,GuidList.guidXmlChooserEditorFactory)]
// Microsoft Visual C# Project
[EditorFactoryNotifyForProject("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}",GuidList.guidXmlChooserEditorFactory)]

我加:

//CustomProjectType
[EditorFactoryNotifyForProject("{GUID CustomProjectType}",GuidList.guidXmlChooserEditorFactory)]

但它不起作用.这导致了此扩展的自定义设计器用于所有类型的项目.

如何使自定义设计器仅在自定义项目中打开* .XAML文件?

解决方法

我认为在VSSDK中没有标准的方法.设计器主要针对某个文件扩展名,并将在任何项目类型中为该文件扩展名调用.

在检查当前加载的项目类型之后,我会尝试查看是否有方法重定向或拒绝创建/实例化该编辑器的请求,或者找到您的文件类型的下一行编辑器并创建一个实例它并返回它.

遗憾的是,自从我上次触及任何VSSDK代码以来,我无法提供技术细节或代码.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读