TextBoxBase.CanUndo Propriedade

Definição

Obtém um valor que indica se o usuário pode desfazer a operação anterior em um controle de caixa de texto.

[System.ComponentModel.Browsable(false)]
public bool CanUndo { get; }

Valor da propriedade

true se o usuário puder desfazer a operação anterior executada em um controle de caixa de texto; caso contrário, false.

Atributos

Exemplos

O exemplo de código a seguir usa TextBox, uma classe derivada. Ele fornece Click manipuladores de eventos para MenuItem objetos que executam operações Recortar, Copiar, Colar e Desfazer. Este exemplo requer que um TextBox controle chamado textBox1 tenha sido criado.

private void Menu_Copy(System.Object sender, System.EventArgs e)
 {
    // Ensure that text is selected in the text box.   
    if(textBox1.SelectionLength > 0)
        // Copy the selected text to the Clipboard.
        textBox1.Copy();
 }
 
 private void Menu_Cut(System.Object sender, System.EventArgs e)
 {   
     // Ensure that text is currently selected in the text box.   
     if(textBox1.SelectedText != "")
        // Cut the selected text in the control and paste it into the Clipboard.
        textBox1.Cut();
 }
 
 private void Menu_Paste(System.Object sender, System.EventArgs e)
 {
    // Determine if there is any text in the Clipboard to paste into the text box.
    if(Clipboard.GetDataObject().GetDataPresent(DataFormats.Text) == true)
    {
        // Determine if any text is selected in the text box.
        if(textBox1.SelectionLength > 0)
        {
          // Ask user if they want to paste over currently selected text.
          if(MessageBox.Show("Do you want to paste over current selection?", "Cut Example", MessageBoxButtons.YesNo) == DialogResult.No)
             // Move selection to the point after the current selection and paste.
             textBox1.SelectionStart = textBox1.SelectionStart + textBox1.SelectionLength;
        }
        // Paste current text in Clipboard into text box.
        textBox1.Paste();
    }
 }

 private void Menu_Undo(System.Object sender, System.EventArgs e)
 {
    // Determine if last operation can be undone in text box.   
    if(textBox1.CanUndo == true)
    {
       // Undo the last operation.
       textBox1.Undo();
       // Clear the undo buffer to prevent last action from being redone.
       textBox1.ClearUndo();
    }
 }

Comentários

Se esse método retornar true, você poderá chamar o Undo método para desfazer a última operação em uma caixa de texto. Você pode usar esse método no Popup caso de um MenuItemou no código que gerencia o estado dos botões em um ToolBar para habilitar ou desabilitar a capacidade de desfazer a operação anterior em um controle de caixa de texto.

Aplica-se a

Produto Versões
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9

Confira também