2

解释问题的最简单方法是使用一些 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>

使用日期选择器选择日期时,如果所选日期不与窗口边缘重叠,我会得到所需的行为,即弹出窗口保持打开状态。如果所选日期超出窗口边缘(底部两行的任何日期),则弹出窗口关闭。防止这种行为的最佳方法是什么?

4

0 回答 0