Запрет удаления / возврата InlineUIContainers в RichTextBox (WPF)

У меня есть RichTextBox, который позволяет пользователю печатать, редактировать и вставлять некоторые сложные элементы UIE, которые обернуты в InlineUIContainer. Проблема в том, что пользователь пытается удалить / вернуться на один из InlineUIContainers. Я хотел бы отключить удаление этих InlineUIContainers, и у меня есть другой способ удалить их.

Я попытался перехватить удаление с помощью KeyEvents/PreviewKeyEvents, события с текстовым изменением, события выгрузки UIElement. Пока что они не работают, потому что удаление пытается выполнить до вызова этих событий.

1 ответ

Попробуйте PreviewKeyDown:

    private void RichTextBox_PreviewKeyDown(object sender, KeyEventArgs e)
    {
        if (e.Key == Key.Delete)
        {
            e.Handled = true;
        }
    }
Другие вопросы по тегам