Was this page helpful?
Your feedback about this content is important. Let us know what you think.
Additional feedback?
1500 characters remaining
Export (0) Print
Expand All

InkCanvas.EditingMode Property

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

Namespace:  System.Windows.Controls
Assembly:  PresentationFramework (in PresentationFramework.dll)
XMLNS for XAML: http://schemas.microsoft.com/winfx/2006/xaml/presentation, http://schemas.microsoft.com/netfx/2007/xaml/presentation

public InkCanvasEditingMode EditingMode { get; set; }
<object EditingMode="InkCanvasEditingMode" .../>

Property Value

Type: System.Windows.Controls.InkCanvasEditingMode
The editing mode used when a pointing device (such as a tablet pen or mouse) is active.

Identifier field

EditingModeProperty

Metadata properties set to true

None

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.

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;
    }
}

.NET Framework

Supported in: 4.6, 4.5, 4, 3.5, 3.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1
Show:
© 2015 Microsoft