谁知道我在哪里可以得到Visual Studio2010中ClassificationTypeDefitions
的BaseDefinitions
列表?
我试图定义一个"UserTypes“的基本定义,但似乎行不通。对于那些不太知道我在说什么的人来说,需要代码来让它更容易……
[Export(typeof(ClassificationTypeDefinition))]
[Name("keyword")]
[BaseDefinition("keyword")]
internal static ClassificationTypeDefinition KeywordDefinition = null;
当前使用c#的关键字定义来突出显示或不突出显示。但是我似乎不能让用户类型工作(类/枚举/结构名称和其他类似的对象)。我尝试使用vs设置文件并使用其中定义的定义,但“用户类型”的定义不起作用。
谢谢,提前说
发布于 2010-08-27 17:45:30
PredefinedClassificationTypeNames
类型有一个公共/共享类型列表,但“用户类型”是由语言提供的一个示例。
简短的答案是,对于尚未移出VS2008接口的语言服务(如C#),[BaseDefinition]
应该与字体和颜色对话框中的显示名称相匹配。如果在这种情况下它不工作,您可以通过添加另一个具有该名称的分类类型定义(“用户类型”)来说服它工作。
长长的答案是:
为了提供这些语言的分类类型信息,编辑器会在您第一次打开与语言服务关联的文件时动态生成这些信息。同步过程本质上是:
IClassificationTypeRegistryService.CreateClassificationType
).因此,问题是在编辑器选取分类类型定义时,该类型并不存在。然而,为将要动态生成的类型添加一个分类类型定义应该会让两个部分都满意:您的类型的基定义将被正确设置,并且同步过程将很乐意跳过第2步,因为已经有一个同名的项。
https://stackoverflow.com/questions/3586109
复制相似问题