Visual Studio 확장 프로그램에서 Visual Studio 편집기 내에서 메서드 호출을 강조해야합니다. 예를 들어 :런타임에 사용자 정의 EditorFormatDefinition 내보내기
나는 독특한 호출의 수에 따라 색상 스펙트럼을 분할하는 HSV 색상을 사용하고 싶습니다.
[Export(typeof(EditorFormatDefinition))]
[ClassificationType(ClassificationTypeNames = "red-background")]
[Name("red-background")]
[UserVisible(true)]
[Order(After = Priority.High)]
public sealed class RedBackground : ClassificationFormatDefinition
{
public RedBackground()
{
DisplayName = "red-background";
BackgroundColor = Colors.Red;
}
}
그러나,이 수동으로 내가 미리 사용하고자하는 모든 색상을 설정하라고 요구한다 : 나는 자신의 EditorFormatDefinition 각 색상을 내보낼 경우
나는 강조 표시를 달성 할 수있다. 런타임에 EditorFormatDefinitions
을 내보내는 방법이 있습니까?
IContentTypeRegistryService 및 IClassificationTypeRegistryService
과 같은 특정 레지스트리는 런타임에 새로운 콘텐츠 형식 및 분류를 만들 수 있도록합니다. 유사한 API가 EditorFormatDefinitions
에 존재합니다.
또는 Visual Studio 내에서 EditorFormatDefinition
을 동적으로 MEF로 내보낼 수 있습니까?
런타임시 주문을 변경할 수 있습니까? OrderAttribute가 제공하는 기능을 의미합니다. – TDenis
IClassificationFormatMap.AddExplicitTextProperties (IClassificationType, TextFormattingRunProperties, IClassificationType) 우선 순위를 설정할 수있는이 두 번째 오버로드를 발견했습니다. – cyanbeam