InkCanvas.EditingMode Property

Definition

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

C#
public System.Windows.Controls.InkCanvasEditingMode EditingMode { get; set; }

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.

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

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

Product Versions
.NET Framework 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, 10

See also