ITextRangeProvider.Move(TextUnit, Int32) 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
移动指定的文本单位数的文本范围。
public:
int Move(System::Windows::Automation::Text::TextUnit unit, int count);
public int Move(System.Windows.Automation.Text.TextUnit unit, int count);
abstract member Move : System.Windows.Automation.Text.TextUnit * int -> int
Public Function Move (unit As TextUnit, count As Integer) As Integer
参数
- unit
- TextUnit
文本单元边界。
返回
实际移动的单位数。 如果新文本范围终结点之一大于或小于 DocumentRange 终结点,则这可以小于请求的数字。
注解
当需要遍历文本范围的内容时,幕后涉及一系列步骤,以成功执行Move方法。
对文本范围进行了规范化。也就是说,已在 Start 终结点将文本范围折叠为退化范围,这使得 End 终结点成为多余。 在文本范围跨越
unit边界的情况下,需要执行此步骤来消除歧义;例如,“{U}RL https://www.microsoft.com/ 嵌入在文本中”,其中“{”和“}”是文本范围终结点。生成的范围在 DocumentRange 中向后移动到所请求的
unit边界的开头。在DocumentRange中,范围按请求的
unit边界数量向前或向后移动。然后通过将 End 终结点移动一个所请求的
unit边界,范围从退化范围状态扩展开来。
调整)如何调整 Move() 和 ExpandToEnclosingUnit() 的文本范围的示例
文本容器的文本内容(或内部文本)和嵌入对象(如超链接或表格单元格)公开为控件视图和 UI 自动化树的内容视图中的单个连续文本流;将忽略对象边界。
包含嵌入对象及其范围的文本流示例
Move 尊重隐藏文本和可见文本。
Move如果控件不支持给定TextUnit值,则延迟到下一个最大的TextUnit受支持。
下面列出了从最小单位到最大单位的顺序。
文本不会以任何方式更改,文本范围仅跨越文本的不同部分。