私の WPF アプリケーションでは、すべてのテキスト ボックスの切り取り、コピー、貼り付けを制限したいと考えています。これを行う1つの方法が設定されていますContextMenu ="{x:Null}"
しかし、これを行うと、失いたくないスペルチェックの提案が失われます。また、私のアプリケーションには1000個のテキストボックスがあるため、これをより最適化したいと考えています。
アドバイスをいただければ幸いです。
私の WPF アプリケーションでは、すべてのテキスト ボックスの切り取り、コピー、貼り付けを制限したいと考えています。これを行う1つの方法が設定されています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>
ノート: