ITextView 接口

定义

表示 中文本的 ITextBuffer视图。 它是平台特定接口的基类,该接口具有允许呈现格式化文本的方法。

public interface class ITextView : Microsoft::VisualStudio::Utilities::IPropertyOwner
public interface class ITextView : Microsoft::VisualStudio::Utilities::IPropertyOwner
__interface ITextView : Microsoft::VisualStudio::Utilities::IPropertyOwner
public interface ITextView : Microsoft.VisualStudio.Utilities.IPropertyOwner
type ITextView = interface
    interface IPropertyOwner
Public Interface ITextView
Implements IPropertyOwner
派生
实现

注解

文本视图是格式化和装饰文本的连续块(可通过 属性访问)的独立于平台的 TextViewLines 表示形式。 它还实例化 IEditorOperations 组件部件的实例,以便它可以执行各种命令。

文本的格式基于附加到基础 ITextBuffer的分类器进行格式设置。

大多数双精度属性和参数对应于文本呈现坐标系中的坐标或距离。 在此坐标系中,x = 0.0 对应于 (x = 视图呈现文本的绘图图面的左边缘。ViewportLeft 对应于视区) 的左边缘,y = 视图。ViewportTop 对应于视区上边缘。 x 坐标从左到右增加,y 坐标从上到下增加。

视图的水平轴和垂直轴的行为不同。 设置视图中的文本格式时,仅设置可见行的格式。 因此,无法以相同的方式水平和垂直滚动视区。

通过更改视区左坐标水平滚动视区,使其相对于绘图图面移动。

只能通过执行新布局来垂直滚动视图。

在视图中执行布局可能会导致视图的 ViewportTop 属性发生更改。 例如,向下滚动一行不会转换任何可见行。 相反,它只会更改视图的 ViewportTop 属性, (导致线条在屏幕上移动,即使其 y 坐标没有更改) 。

文本呈现坐标系中的距离对应于逻辑像素。 如果在不进行任何缩放转换的情况下显示文本呈现图面,则文本呈现坐标系中的 1 个单位对应于显示器上的一个像素。

属性

BufferGraph

IBufferGraph获取包含此视图的源缓冲区集的 。

Caret

获取插入点元素。

HasAggregateFocus

确定视图或其任何装饰是否具有焦点。

InLayout

确定视图是否处于布局过程中。

IsClosed

确定此文本视图是否已关闭。

IsMouseOverViewOrAdornments

确定鼠标是否位于视图或其任何装饰上。

LineHeight

获取视图中文本行的名义高度。

MaxTextRightCoordinate

获取最长线条的右坐标,无论该线条当前是否可见,以逻辑像素表示。

Options

获取此文本视图的选项。

Properties

由属性所有者控制的属性集合。

(继承自 IPropertyOwner)
ProvisionalTextHighlight

获取临时文本突出显示所覆盖的文本范围。

Roles

此视图所扮演的角色。 角色部分确定为视图实例化的扩展。

Selection

获取 selection 元素。

TextBuffer

ITextBuffer获取在此视图中呈现其文本的 。

TextDataModel

ITextDataModel获取此文本视图的 。

TextSnapshot

ITextSnapshot获取视图中当前呈现的文本的 。

TextViewLines

获取在此视图中呈现的 ITextViewLine 对象的只读列表。

TextViewModel

ITextViewModel获取此文本视图的 。

ViewportBottom

获取视区下边缘在文本呈现坐标系中的位置。

ViewportHeight

获取可见内容窗口的高度(以逻辑像素为单位)。

ViewportLeft

获取或设置视区左边缘在文本呈现坐标系中的位置。

ViewportRight

获取视区右边缘在文本呈现坐标系中的位置。

ViewportTop

获取视区上边缘在文本呈现坐标系中的位置。

ViewportWidth

获取可见内容窗口的宽度(以逻辑像素为单位)。

ViewScroller

获取一个帮助程序,该帮助程序提供滚动或操作视图的各种方法。

VisualSnapshot

ITextSnapshot获取正在呈现的视觉对象缓冲区的 。

方法

Close()

关闭文本视图及其视图。

DisplayTextLineContainingBufferPosition(SnapshotPoint, Double, ViewRelativePosition)

格式化并显示文本缓冲区的内容,以便 ITextViewLine 将包含 bufferPosition 内容显示在所需位置。

DisplayTextLineContainingBufferPosition(SnapshotPoint, Double, ViewRelativePosition, Nullable<Double>, Nullable<Double>)

格式化并显示文本缓冲区的内容,以便 ITextViewLine 将包含 bufferPosition 内容显示在所需位置。

GetTextElementSpan(SnapshotPoint)

SnapshotSpan获取在给定 SnapshotPoint处构成文本元素 (单个视觉表示形式) 的文本的 。

GetTextViewLineContainingBufferPosition(SnapshotPoint)

ITextViewLine获取包含指定文本缓冲区位置的 。

QueueSpaceReservationStackRefresh()

请求刷新空间预留堆栈。

事件

Closed

在文本视图关闭后立即发生。

GotAggregateFocus

当键盘焦点切换到视图或其装饰之一时发生。

LayoutChanged

每当视图中显示的文本更改时发生。

LostAggregateFocus

当键盘焦点离开视图及其任何装饰时发生。

MouseHover

当鼠标悬停在同一个字符上时发生。

ViewportHeightChanged

当视区的高度发生更改时发生。

ViewportLeftChanged

当视区左边缘的位置发生更改时发生。 (例如,当视图水平滚动)

ViewportWidthChanged

在视区宽度更改时发生。

扩展方法

GetInOuterLayout(ITextView)

确定视图是正在布局中,还是正在准备布局视图。

GetMultiSelectionBroker(ITextView)

获取用于管理视图中的选择的对象。

IsEmbeddedTextView(ITextView)

获取给定 ITextView 是否嵌入到另一个 ITextView中。

IsReadOnlyTextView(ITextView)

获取给定 ITextView 是否被视为只读。

QueuePostLayoutAction(ITextView, Action)

请参阅 QueuePostLayoutAction(Action)

TryGetContainingTextView(ITextView, ITextView)

获取给定嵌入 ITextView的 包含ITextView

TryGetTextViewLineContainingBufferPosition(ITextView, SnapshotPoint, ITextViewLine)

请参阅 TryGetTextViewLineContainingBufferPosition(SnapshotPoint, ITextViewLine)

TryGetTextViewLines(ITextView, ITextViewLineCollection)

请参阅 TryGetTextViewLines(ITextViewLineCollection)

适用于