在我的 WPF 应用程序中,我想限制所有文本框的剪切、复制和粘贴。一种方法是设置ContextMenu ="{x:Null}"
但是通过这样做,我会丢失我不想丢失的拼写检查建议。此外,在我的应用程序中,我有 1000 个文本框,所以我想以更优化的方式进行操作。
任何建议将被认真考虑。
在我的 WPF 应用程序中,我想限制所有文本框的剪切、复制和粘贴。一种方法是设置ContextMenu ="{x:Null}"
但是通过这样做,我会丢失我不想丢失的拼写检查建议。此外,在我的应用程序中,我有 1000 个文本框,所以我想以更优化的方式进行操作。
任何建议将被认真考虑。
如果您只需要与拼写检查相关的菜单项,您可以参考这篇 MSDN 文章:
如何:使用上下文菜单进行拼写检查。
如果要将自定义 ContextMenu 应用于多个(但不是全部)文本框:
<Window.Resources>
<ContextMenu x:Key="MyCustomContextMenu">
<MenuItem Header="Ignore All" Command="EditingCommands.IgnoreSpellingError" />
</ContextMenu>
</Window.Resources>
<Grid>
<TextBox Height="23" Name="textBox1" Width="120" SpellCheck.IsEnabled="True"
ContextMenu="{StaticResource MyCustomContextMenu}" />
</Grid>
如果要将自定义 ContextMenu 应用于所有文本框:
<Window.Resources>
<Style TargetType="{x:Type TextBox}">
<Setter Property="ContextMenu">
<Setter.Value>
<ContextMenu>
<MenuItem
Header="Ignore All"
Command="EditingCommands.IgnoreSpellingError" />
</ContextMenu>
</Setter.Value>
</Setter>
</Style>
</Window.Resources>
<Grid>
<TextBox Height="23" Name="textBox1" Width="120" SpellCheck.IsEnabled="True" />
</Grid>
笔记: