Source 类

表示在分析该源的语言服务和控件的源文件操作。

此 API 不兼容 CLS。 

继承层次结构

System.Object
  Microsoft.VisualStudio.Package.Source

命名空间:  Microsoft.VisualStudio.Package
程序集:   Microsoft.VisualStudio.Package.LanguageService.10.0(在 Microsoft.VisualStudio.Package.LanguageService.10.0.dll 中)
  Microsoft.VisualStudio.Package.LanguageService(在 Microsoft.VisualStudio.Package.LanguageService.dll 中)
  Microsoft.VisualStudio.Package.LanguageService.11.0(在 Microsoft.VisualStudio.Package.LanguageService.11.0.dll 中)
  Microsoft.VisualStudio.Package.LanguageService.9.0(在 Microsoft.VisualStudio.Package.LanguageService.9.0.dll 中)

语法

声明
<CLSCompliantAttribute(False)> _
Public Class Source _
    Implements IDisposable, IVsTextLinesEvents, IVsHiddenTextClient, IVsUserDataEvents
[CLSCompliantAttribute(false)]
public class Source : IDisposable, IVsTextLinesEvents, 
    IVsHiddenTextClient, IVsUserDataEvents

Source 类型公开以下成员。

构造函数

  名称 说明
公共方法 Source 初始化 Source 类的新实例。

页首

属性

  名称 说明
公共属性 ChangeCount ,因为已打开,获取所做更改的数量对源文件它。
公共属性 ColorState 获取或设置用于分析各种任务的 IVsTextColorState 对象。
公共属性 CompletedFirstParse 获取则分析器是否至少一次完成。
公共属性 CompletionSet 获取 CompletionSet 集合用于 Source 类的此实例。
公共属性 DirtySpan 获取用于标识在源中已更改的行的大小。
受保护的属性 HandlesSnapshots
公共属性 IsClosed 获取源文件的当前状态。
公共属性 IsCompletorActive 获取 IntelliSense 成员完成或方法提示模式是否处于活动状态。
公共属性 IsDirty 获取或设置任何源行是否已更改。
公共属性 LanguageService 获取语言服务与源文件。
公共属性 LastParseTime 获取上次持续时间分析操作。
公共属性 OutliningEnabled 获取或设置大纲显示当前是否已启用。

页首

方法

  名称 说明
公共方法 BeginParse() 开始致力的分析操作中前景或背景。
公共方法 BeginParse(Int32, Int32, TokenInfo, ParseReason, IVsTextView, ParseResultHandler) 启动与给定标记的分析操作中,文本视图,并分析请求处理程序。
公共方法 Close 确定源文件是否可以关闭的。
公共方法 ColumnToVisiblePosition 获取屏幕列位置使用指定的字符偏移量对应,考虑制表符大小。
公共方法 CommentBlock 注释源范围使用隐藏注释。
公共方法 CommentLines 使用行注释,注释源范围。
公共方法 CommentSpan 注释源指定的范围。
公共方法 Completion 启动 IntelliSense 成员完成操作。
公共方法 CreateAuthoringSink 在分析操作中创建一 AuthoringSink 对象的实例。使用。
公共方法 CreateCompletionSet 创建 CompletionSet 类的新实例。
公共方法 CreateErrorTaskItem(TextSpan, MARKERTYPE, String) 创建 错误表的新错误任务项,所提供的文本、标记类型和文件名的。
公共方法 CreateErrorTaskItem(TextSpan, String, String, TaskPriority, TaskCategory, MARKERTYPE, TaskErrorCategory) 创建 错误表的新错误任务项,所提供的文本、文件名、消息、优先级别、类、标记类型和错误类型的。
公共方法 CreateMethodData 创建 MethodData 对象的新实例句柄 IntelliSense 方法提示模式。
公共方法 DismissCompletor 消除 IntelliSense 方法提示或完成从视图列表,后者是活动的。
公共方法 Dispose 调用在销毁此 Source 对象的准备。
公共方法 Equals 确定指定的对象是否等于当前对象。 (继承自 Object。)
公共方法 ExecMarkerCommand 执行在指定范围的指定的命令。
受保护的方法 Finalize ,对对象所销毁类析构函数。 (重写 Object.Finalize()。)
公共方法 GetColorizer 获取 colorizer 与此 Source 对象。
公共方法 GetCommentFormat 获取有关的信息都定义语言的注释。
公共方法 GetDocumentSpan 获取范围集占用由整个源文件。
公共方法 GetExpansionProvider 扩展提供程序支持代码段。
公共方法 GetFilePath 获取源文件的文件名。
公共方法 GetHashCode 用作特定类型的哈希函数。 (继承自 Object。)
公共方法 GetHiddenTextSession 如果有获取的隐藏区域管理器。
公共方法 GetLine 获取在指定的行的文本。
公共方法 GetLineCount 获取的行数在源文件中。
公共方法 GetLineIndexOfPosition 获取行和列所指定的位置。
公共方法 GetLineLength 为指定获取行的长度。
公共方法 GetMarkerCommandInfo 确定标记命令在指定的隐藏区域的上下文菜单可以显示。
公共方法 GetNewLine 获取换行符使用在中指定的行的结尾。
公共方法 GetPairExtents(IVsTextView, Int32, Int32, TextSpan%) 获取此范围之间相对语言元素。
公共方法 GetPairExtents(IVsTextView, Int32, Int32, TextSpan%, TextSpan%) 获取的文本范围相对 (或数组密码) 语言元素。
公共方法 GetPositionOfLineIndex 获取该位置与特定行和字符偏移位置相对应。
公共方法 GetTaskProvider 获取错误管理任务的提供程序。
公共方法 GetText() 获取所有源文件的文本。
公共方法 GetText(TextSpan) 在文本范围中获取文本中。
公共方法 GetText(Int32, Int32, Int32, Int32) 获取文本在指定的位置之间。
公共方法 GetTextLines 获取与此 Source 对象关联的 IVsTextLines 对象。
公共方法 GetTextUpToLine 从源页获取文本模式将匹配特定行号。
公共方法 GetTipText 在给定的隐藏区域获取文本用于工具提示。
公共方法 GetTokenInfo 获取有关该标记的信息在指定的位置。
公共方法 GetTokenInfoAt 获取由所提供的列数 TokenInfo 对象的索引。
公共方法 GetType 获取当前实例的 Type。 (继承自 Object。)
公共方法 GetUserData 获取用户数据与指定的 GUID。
公共方法 GetWordExtent 获取范围集占用由单词在指定的位置。
公共方法 MakeBaseSpanVisible 确保给定范围在给定的隐藏区域都是可见的。
公共方法 MatchBraces 显示语言元素对的命名范围位置之一个元素。
受保护的方法 MemberwiseClone 创建当前 Object 的浅表副本。 (继承自 Object。)
公共方法 MethodTip ,以便在输入,显示方法签名的 IntelliSense 方法提示。
公共方法 NormalizeNewlines 转换在指定的文本的换行符转换为指定的换行符。
公共方法 OnBeforeSessionEnd 在页上的隐藏区域会话之前调用关闭。
公共方法 OnChangeLineAttributes 调用,在一个或多个行的属性 (字体,颜色) 已更改。
公共方法 OnChangeLineText 调用时,行文本发生更改。
公共方法 OnChangesCommitted 调用时,代码段致力于源文件。
公共方法 OnCommand 处理 IntelliSense 编辑命令。
公共方法 OnHiddenRegionChange 调用,在一个隐藏的区域已更改。
公共方法 OnIdle 调用,而其他所有未处理事件。
公共方法 OnUserDataChange 调用,当用户数据在文本缓冲区已更改。
公共方法 Open 标记 Source 对象作为处于打开状态。
公共方法 ProcessHiddenRegions 更新基于的所有隐藏的区域为列表隐藏的区域。
公共方法 Recolorize 更新显示的行上指定大小的语法。
公共方法 ReformatSpan 设置源指定的范围。
公共方法 RegisterTextBufferEventHandlers
公共方法 RemoveHiddenRegions 从当前视图中移除所有隐藏的区域。
公共方法 RemoveTask 从错误 任务 窗口中移除指定的错误任务。
公共方法 ScanToNonWhitespaceChar 返回第一个非空白字符的偏移量位于给定行的。
公共方法 SetText(String) 用给定文本替换源内容。
公共方法 SetText(TextSpan, String) 用给定文本替换源指定的范围。
公共方法 SetText(Int32, Int32, Int32, Int32, String) 用给定文本替换源中的指定部分。
公共方法 SetUserData 设置特定用户数据特性为给定值。
公共方法 ToString 返回表示当前对象的字符串。 (继承自 Object。)
公共方法 TrimSpan 为可跳过、前导和尾随空格调整给定范围。
公共方法 UncommentBlock 从在指定的范围周围取消注释字符。
公共方法 UncommentLines 移除行注释字符从最初在给定范围内每行。
公共方法 UncommentSpan 从开始移除任何注释给定范围的字符和结束。
公共方法 VisiblePositionToColumn 获取位于给定行的字符偏移量与指定的屏幕列位置对应。

页首

备注

Source 对象表示整个源文件与特定视图。 有关源文件的信息可以从此类获取。 但是,此类的主要功能是处理在源的分析操作中以支持 IntelliSense 操作,并且源文件特定版本的操作 (如将注释添加到和移除注释以代码块和报告分析错误。

对实现者的说明

基类与 LanguageService 类的方法交互支持所有 IntelliSense 操作 (它们是在 Source 类的方法声明详细信息)。 如果您:

  • 除了标准 C#/C++ 分隔符外,还支持不同的注释分隔符,

  • 重新设置代码,

    和/或

  • 支持隐藏区域的高级功能 (监视状态更改,确保范围是否可见和标记编辑上下文菜单命令),

必须从 Source 类派生类和实例化在 CreateSource的类。

对调用者的说明

此类通过对 CreateSource 方法的调用实例化。 这样做,则 CodeWindowManager 对象实例化时 ( Source 对象传递给 CodeWindowManager 构造函数)。 Colorizer 对象实例化并传递给 Source 类的构造函数。

线程安全

此类型的任何公共 static(在 Visual Basic 中为 Shared) 成员都是线程安全的。但不保证所有实例成员都是线程安全的。

请参见

参考

Microsoft.VisualStudio.Package 命名空间