InkCanvas.EditingMode Property

Definition

Gets or sets the user editing mode used by an active pointing device.

public:
 property System::Windows::Controls::InkCanvasEditingMode EditingMode { System::Windows::Controls::InkCanvasEditingMode get(); void set(System::Windows::Controls::InkCanvasEditingMode value); };
public System.Windows.Controls.InkCanvasEditingMode EditingMode { get; set; }
member this.EditingMode : System.Windows.Controls.InkCanvasEditingMode with get, set
Public Property EditingMode As InkCanvasEditingMode

Property Value

The editing mode used when a pointing device (such as a tablet pen or mouse) is active.

Examples

The following example creates an application that uses the various types of editing modes on an InkCanvas.

public partial class Window1 : Window
{
    RadioButton inkEditingMode;
    RadioButton selectEditingMode;
    RadioButton eraseByStrokeEditingMode;
    RadioButton eraseByPointEditingMode;

    InkCanvas inkCanvas1;

    StackPanel stackPanel1;

    DockPanel root;

    public Window1()
    {
        InitializeComponent();
    }

    private void WindowLoaded(object sender, RoutedEventArgs e)
    {
        root = new DockPanel();
        this.Content = root;

        stackPanel1 = new StackPanel();
        root.Children.Add(stackPanel1);

        inkEditingMode = new RadioButton();
        inkEditingMode.Content = "Ink";
        stackPanel1.Children.Add(inkEditingMode);
        inkEditingMode.Click += new RoutedEventHandler(inkEditingMode_Click);
        inkEditingMode.IsChecked = true;

        selectEditingMode = new RadioButton();
        selectEditingMode.Content = "Select";
        stackPanel1.Children.Add(selectEditingMode);
        selectEditingMode.Click += new RoutedEventHandler(selectEditingMode_Click);

        eraseByStrokeEditingMode = new RadioButton();
        eraseByStrokeEditingMode.Content = "Erase by Stroke";
        stackPanel1.Children.Add(eraseByStrokeEditingMode);
        eraseByStrokeEditingMode.Click += new RoutedEventHandler(eraseByStrokeEditingMode_Click);

        eraseByPointEditingMode = new RadioButton();
        eraseByPointEditingMode.Content = "Erase by Point";
        stackPanel1.Children.Add(eraseByPointEditingMode);
        eraseByPointEditingMode.Click += new RoutedEventHandler(eraseByPointEditingMode_Click);

        inkCanvas1 = new InkCanvas();
        root.Children.Add(inkCanvas1);
    }

    void eraseByPointEditingMode_Click(object sender, RoutedEventArgs e)
    {
        inkCanvas1.EditingMode = InkCanvasEditingMode.EraseByPoint;
    }

    void eraseByStrokeEditingMode_Click(object sender, RoutedEventArgs e)
    {
        inkCanvas1.EditingMode = InkCanvasEditingMode.EraseByStroke;
    }

    void selectEditingMode_Click(object sender, RoutedEventArgs e)
    {
        inkCanvas1.EditingMode = InkCanvasEditingMode.Select;
    }

    void inkEditingMode_Click(object sender, RoutedEventArgs e)
    {
        inkCanvas1.EditingMode = InkCanvasEditingMode.Ink;
    }
}
Class Window1
    Inherits Window

    Private inkEditingMode As RadioButton
    Private selectEditingMode As RadioButton
    Private eraseByStrokeEditingMode As RadioButton
    Private eraseByPointEditingMode As RadioButton
    
    Private inkCanvas1 As InkCanvas
    Private stackPanel1 As StackPanel
    Private root As DockPanel
    
    Public Sub New() 
        InitializeComponent()
    
    End Sub
    
    
    Private Sub WindowLoaded(ByVal sender As Object, ByVal e As RoutedEventArgs) 

        root = New DockPanel()
        Me.Content = root

        stackPanel1 = New StackPanel()
        root.Children.Add(stackPanel1)
        
        inkEditingMode = New RadioButton()
        inkEditingMode.Content = "Ink"
        stackPanel1.Children.Add(inkEditingMode)
        AddHandler inkEditingMode.Click, AddressOf inkEditingMode_Click
        inkEditingMode.IsChecked = True
        
        selectEditingMode = New RadioButton()
        selectEditingMode.Content = "Select"
        stackPanel1.Children.Add(selectEditingMode)
        AddHandler selectEditingMode.Click, AddressOf selectEditingMode_Click
        
        eraseByStrokeEditingMode = New RadioButton()
        eraseByStrokeEditingMode.Content = "Erase by Stroke"
        stackPanel1.Children.Add(eraseByStrokeEditingMode)
        AddHandler eraseByStrokeEditingMode.Click, AddressOf eraseByStrokeEditingMode_Click
        
        eraseByPointEditingMode = New RadioButton()
        eraseByPointEditingMode.Content = "Erase by Point"
        stackPanel1.Children.Add(eraseByPointEditingMode)
        AddHandler eraseByPointEditingMode.Click, AddressOf eraseByPointEditingMode_Click
        
        inkCanvas1 = New InkCanvas()
        root.Children.Add(inkCanvas1)
    
    End Sub
    
    
    Private Sub eraseByPointEditingMode_Click(ByVal sender As Object, ByVal e As RoutedEventArgs)

        inkCanvas1.EditingMode = InkCanvasEditingMode.EraseByPoint

    End Sub
    
    
    Private Sub eraseByStrokeEditingMode_Click(ByVal sender As Object, ByVal e As RoutedEventArgs)

        inkCanvas1.EditingMode = InkCanvasEditingMode.EraseByStroke

    End Sub
    
    
    Private Sub selectEditingMode_Click(ByVal sender As Object, ByVal e As RoutedEventArgs)

        inkCanvas1.EditingMode = InkCanvasEditingMode.Select

    End Sub
    
    
    Private Sub inkEditingMode_Click(ByVal sender As Object, ByVal e As RoutedEventArgs)

        inkCanvas1.EditingMode = InkCanvasEditingMode.Ink

    End Sub
End Class

Remarks

The default EditingMode is Ink. Changing the EditingMode clears any existing selections.

The EditingMode specifies the mode of the pointing device as it interacts with the InkCanvas. EditingModeInverted is used by some digitizers when the "eraser end" of the stylus contacts the digitizer.

Dependency Property Information

Item Value
Identifier field EditingModeProperty
Metadata properties set to true None

Applies to

See also