【问题标题】:Prevent delete/backspace of InlineUIContainers in RichTextBox (WPF)防止在 RichTextBox (WPF) 中删除/退格 InlineUIContainers
【发布时间】:2010-05-05 00:39:22
【问题描述】:

我有一个 RichTextBox,它允许用户键入、编辑和插入一些包含在 InlineUIContainer 中的复杂 UIElement。问题是当用户尝试删除/退格其中一个 InlineUIContainers 时。我想禁用这些 InlineUIContainers 的删除,并且我有另一种方法让用户删除它们。

我尝试使用 KeyEvents/PreviewKeyEvents、textchanged 事件、UIElement 的卸载事件来拦截删除。到目前为止,它们还没有工作,因为删除是在调用这些事件之前尝试执行的。

【问题讨论】:

    标签: c# wpf richtextbox inlineuicontainer


    【解决方案1】:

    试试 PreviewKeyDown:

        private void RichTextBox_PreviewKeyDown(object sender, KeyEventArgs e)
        {
            if (e.Key == Key.Delete)
            {
                e.Handled = true;
            }
        }
    

    【讨论】:

    • 这将使删除按钮什么也不做。如果您想删除富文本框中的常规文本,但不删除按钮和其他 UI 元素怎么办?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-12-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-12-17
    相关资源
    最近更新 更多