私の WPF アプリケーションでは、メニュー項目にテキスト ボックスが必要です。次のコードを使用してこれを行うことができました。
<Menu Height="23" HorizontalAlignment="Stretch" Name="MainMenu" VerticalAlignment="Top">
<MenuItem Header="File">
<MenuItem Header="Exit" Click="menuItemExit_Click" />
</MenuItem>
<MenuItem Header="Settings">
<MenuItem Header="Some setting" IsCheckable="True" />
<Separator />
<MenuItem>
<MenuItem.Header>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" />
<ColumnDefinition />
</Grid.ColumnDefinitions>
<Label Content="Some value:" Margin="0,3,6,0" Padding="0" />
<TextBox Margin="0,0,0,6" Grid.Column="1" />
</Grid>
</MenuItem.Header>
</MenuItem>
</MenuItem>
</Menu>
このコードは期待どおりにメニュー項目を表示しますが、テキスト ボックスに何らかの値を入力し始めてから、テキスト ボックスのメニュー項目から (クリックではなく) マウスを離すと、テキスト ボックスはフォーカスを失い、クリックするまで入力を続けることができなくなります。もう一度テキストボックスに。WinForms のテキスト ボックス メニュー項目と同じ動作を実現するにはどうすればよいですか? つまり、ユーザーがテキスト ボックスの外側をクリックするか、Tab キーを押した場合にのみ、テキスト ボックスはフォーカスを失います。
前もって感謝します。