Export (0) Print
Expand All

TextBoxBase.CanUndo Property

Gets a value indicating whether the user can undo the previous operation in a text box control.

Namespace:  System.Windows.Forms
Assembly:  System.Windows.Forms (in System.Windows.Forms.dll)

'Declaration
<BrowsableAttribute(False)> _
Public ReadOnly Property CanUndo As Boolean

Property Value

Type: System.Boolean
true if the user can undo the previous operation performed in a text box control; otherwise, false.

If this method returns true, you can call the Undo method to undo the last operation in a text box. You can use this method in the Popup event of a MenuItem, or in code that manages the state of buttons on a ToolBar to enable or disable the ability to undo the previous operation in a text box control.

The following code example uses TextBox, a derived class. It provides Click event handlers for MenuItem objects that perform Cut, Copy, Paste, and Undo operations. This example requires that a TextBox control named textBox1 has been created.

    Private Sub Menu_Copy(sender As System.Object, e As System.EventArgs)
        ' Ensure that text is selected in the text box.    
        If textBox1.SelectionLength > 0 Then 
            ' Copy the selected text to the Clipboard.
            textBox1.Copy()
        End If 
    End Sub 

    Private Sub Menu_Cut(sender As System.Object, e As System.EventArgs)
        ' Ensure that text is currently selected in the text box.    
        If textBox1.SelectedText <> "" Then 
            ' Cut the selected text in the control and paste it into the Clipboard.
            textBox1.Cut()
        End If 
    End Sub 

    Private Sub Menu_Paste(sender As System.Object, e As System.EventArgs)
        ' Determine if there is any text in the Clipboard to paste into the text box. 
        If Clipboard.GetDataObject().GetDataPresent(DataFormats.Text) = True Then 
            ' Determine if any text is selected in the text box. 
            If textBox1.SelectionLength > 0 Then 
                ' 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 Then 
                    ' Move selection to the point after the current selection and paste.
                    textBox1.SelectionStart = textBox1.SelectionStart + _
                        textBox1.SelectionLength
                End If 
            End If  
            ' Paste current text in Clipboard into text box.
            textBox1.Paste()
        End If 
    End Sub 

    Private Sub Menu_Undo(sender As System.Object, e As System.EventArgs)
        ' Determine if last operation can be undone in text box.    
        If textBox1.CanUndo = True Then 
            ' Undo the last operation.
            textBox1.Undo()
            ' Clear the undo buffer to prevent last action from being redone.
            textBox1.ClearUndo()
        End If 
    End Sub

.NET Framework

Supported in: 4.5, 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core Role not supported), Windows Server 2008 R2 (Server Core Role supported with SP1 or later; Itanium not supported)

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

Show:
© 2014 Microsoft