問題を説明する最も簡単な方法は、いくつかの Xaml を使用することです。
<Window x:Class="NestedPopups.MainWindow" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" Title="MainWindow" Height="300" Width="525">
<Grid>
<ToggleButton x:Name="b1" VerticalAlignment="Top" Width="50" Height="50"></ToggleButton>
<Popup IsOpen="{Binding ElementName=b1, Path=IsChecked}" PlacementTarget="{Binding ElementName=b1}" Width="100" StaysOpen="False"
Height="200">
<Grid>
<DatePicker HorizontalAlignment="Center" VerticalAlignment="Center">
</DatePicker>
</Grid>
</Popup>
</Grid>
</Window>
日付ピッカーを使用して日付を選択するときに、選択した日付がウィンドウの端と重ならない場合、望ましい動作が得られます。つまり、ポップアップが開いたままになります。選択した日付がウィンドウの端 (下 2 行の任意の日付) を超えている場合、ポップアップは閉じます。この動作を防ぐ最善の方法は何ですか?