ISEEditor 对象The ISEEditor Object

本文内容

ISEEditor 对象是 Microsoft.PowerShell.Host.ISE.ISEEditor 类的实例。控制台窗格是 ISEEditor 对象。每个 ISEFile 对象都有一个关联的 ISEEditor 对象。以下各节列出了 ISEEditor 对象的方法和属性。

方法Methods

Clear()Clear()

在 Windows PowerShell ISE 2.0 和更高版本中受支持。

清除编辑器中的文本。

  1. # Clears the text in the Console pane.
  2. $psISE.CurrentPowerShellTab.ConsolePane.Clear()

EnsureVisible(int lineNumber)EnsureVisible(int lineNumber)

在 Windows PowerShell ISE 2.0 和更高版本中受支持。

滚动编辑器以使对应于指定 lineNumber 参数值的行可见。如果指定的行号超出范围 1,即用于定义有效行号的最后一个行号,则会引发异常。

lineNumber 要使其可见的行号。

  1. # Scrolls the text in the Script pane so that the fifth line is in view.
  2. $psISE.CurrentFile.Editor.EnsureVisible(5)

Focus()Focus()

在 Windows PowerShell ISE 2.0 和更高版本中受支持。

将焦点设置到编辑器。

  1. # Sets focus to the Console pane.
  2. $psISE.CurrentPowerShellTab.ConsolePane.Focus()

GetLineLength(int lineNumber )GetLineLength(int lineNumber )

在 Windows PowerShell ISE 2.0 和更高版本中受支持。

获取按行号指定的行的长度(整数形式)。

lineNumber 要获取长度的行号。

Returns 所指定行号的行的长度。

  1. # Gets the length of the first line in the text of the Command pane.
  2. $psISE.CurrentPowerShellTab.ConsolePane.GetLineLength(1)

GoToMatch()GoToMatch()

在 Windows PowerShell ISE 3.0 和更高版本中受支持,但不存在于早期版本中。

如果编辑器对象的 CanGoToMatch 属性是 $true,当脱字号直接位于左括号、中括号或大括号 - (、[、{ - 或直接位于右括号、中括号或大括号 - )、]、}。脱字号位于开始字符之前或结束字符之后。如果 CanGoToMatch 属性是 $false,则此方法不执行任何操作。

  1. # Goes to the matching character if CanGoToMatch() is $true
  2. $psISE.CurrentPowerShellTab.ConsolePane.GoToMatch()

InsertText( text )InsertText( text )

在 Windows PowerShell ISE 2.0 和更高版本中受支持。

将所选内容替换为文本或在当前脱字号位置插入文本。

text - String 要插入的文本。

请参阅本主题稍后介绍的脚本示例

Select( startLine, startColumn, endLine, endColumn )Select( startLine, startColumn, endLine, endColumn )

在 Windows PowerShell ISE 2.0 和更高版本中受支持。

startLinestartColumnendLineendColumn 参数中选择文本。

startLine - Integer 所选内容的起始行。

startColumn - Integer 所选内容的起始行中的列。

endLine - Integer 所选内容的结束行。

endColumn - Integer 所选内容的结束行中的列。

请参阅本主题稍后介绍的脚本示例

SelectCaretLine()SelectCaretLine()

在 Windows PowerShell ISE 2.0 和更高版本中受支持。

选择当前包含脱字号的整个文本行。

  1. # First, set the caret position on line 5.
  2. $psISE.CurrentFile.Editor.SetCaretPosition(5,1)
  3. # Now select that entire line of text
  4. $psISE.CurrentFile.Editor.SelectCaretLine()

SetCaretPosition( lineNumber, columnNumber )SetCaretPosition( lineNumber, columnNumber )

在 Windows PowerShell ISE 2.0 和更高版本中受支持。

在行号和列号处设置脱字号位置。如果脱字号行号或脱字号列号不在其各自的有效范围内,会引发异常。

lineNumber - Integer 脱字号行号。

columnNumber - Integer 脱字号列号。

  1. # Set the CaretPosition.
  2. $psISE.CurrentFile.Editor.SetCaretPosition(5,1)

ToggleOutliningExpansion()ToggleOutliningExpansion()

在 Windows PowerShell ISE 3.0 和更高版本中受支持,但不存在于早期版本中。

使所有大纲部分展开或折叠。

  1. # Toggle the outlining expansion
  2. $psISE.CurrentFile.Editor.ToggleOutliningExpansion()

“属性”Properties

CanGoToMatchCanGoToMatch

在 Windows PowerShell ISE 3.0 和更高版本中受支持,但不存在于早期版本中。

只读布尔值属性,指示脱字号是否位于小括号、中括号或大括号(即 ()、[]、{})旁边。如果脱字号直接位于开始字符之前或直接位于结束字符之后,则此属性值是 $true否则,是 $false

  1. # Test to see if the caret is next to a parenthesis, bracket, or brace
  2. $psISE.CurrentFile.Editor.CanGoToMatch

CaretColumnCaretColumn

在 Windows PowerShell ISE 2.0 和更高版本中受支持。

只读属性,可获取对应于脱字号位置的列号。

  1. # Get the CaretColumn.
  2. $psISE.CurrentFile.Editor.CaretColumn

CaretLineCaretLine

在 Windows PowerShell ISE 2.0 和更高版本中受支持。

只读属性,可获取包含脱字号的行号。

  1. # Get the CaretLine.
  2. $psISE.CurrentFile.Editor.CaretLine

CaretLineTextCaretLineText

在 Windows PowerShell ISE 2.0 和更高版本中受支持。

只读属性,可获取包含脱字号的完整文本行。

  1. # Get all of the text on the line that contains the caret.
  2. $psISE.CurrentFile.Editor.CaretLineText

LineCountLineCount

在 Windows PowerShell ISE 2.0 和更高版本中受支持。

只读属性,可获取编辑器中的行计数。

  1. # Get the LineCount.
  2. $psISE.CurrentFile.Editor.LineCount

SelectedTextSelectedText

在 Windows PowerShell ISE 2.0 和更高版本中受支持。

只读属性,可获取编辑器中的所选文本。

请参阅本主题稍后介绍的脚本示例

文本Text

在 Windows PowerShell ISE 2.0 和更高版本中受支持。

读写属性,可获取或设置编辑器中的文本。

请参阅本主题稍后介绍的脚本示例

脚本示例Scripting Example

  1. # This illustrates how you can use the length of a line to
  2. # select the entire line and shows how you can make it lowercase.
  3. # You must run this in the Console pane. It will not run in the Script pane.
  4. # Begin by getting a variable that points to the editor.
  5. $myEditor = $psISE.CurrentFile.Editor
  6. # Clear the text in the current file editor.
  7. $myEditor.Clear()
  8. # Make sure the file has five lines of text.
  9. $myEditor.InsertText("LINE1 `n")
  10. $myEditor.InsertText("LINE2 `n")
  11. $myEditor.InsertText("LINE3 `n")
  12. $myEditor.InsertText("LINE4 `n")
  13. $myEditor.InsertText("LINE5 `n")
  14. # Use the GetLineLength method to get the length of the third line.
  15. $endColumn = $myEditor.GetLineLength(3)
  16. # Select the text in the first three lines.
  17. $myEditor.Select(1, 1, 3, $endColumn + 1)
  18. $selection = $myEditor.SelectedText
  19. # Clear all the text in the editor.
  20. $myEditor.Clear()
  21. # Add the selected text back, but in lower case.
  22. $myEditor.InsertText($selection.ToLower())

另请参阅See Also