2

位置を移動する方法についてのアイデアはありますか? メニューは次のとおりです。

ここに画像の説明を入力

XAML は次のとおりです。

<Canvas MinHeight="25" Panel.ZIndex="99">
<ToggleButton x:Name="btnPluginMenu" Content="CT" Width="48" Height="48" Canvas.Left="452" Canvas.Top="263"/>
<Popup Placement="Top" PlacementTarget="{Binding ElementName=btnPluginMenu}" IsOpen="{Binding ElementName=btnPluginMenu, Path=IsChecked}">
<Grid Background="Gray" Width="175" Height="130">
                    <Grid.BitmapEffect>
                        <DropShadowBitmapEffect />
                    </Grid.BitmapEffect>
 </Grid>
            </Popup>
</Canvas>
4

2 に答える 2

4

MSDNから次のPlacement=Relativeモードを使用できます。

PlacementTarget の左上隅を基準とした、Horizo​​ntalOffset および VerticalOffset プロパティ値によって定義されるオフセットでの Popup コントロールの位置。画面の端が Popup を覆い隠す場合、コントロールは画面の端に合わせて再配置されます。

つまり、次のようなことができます。

<ToggleButton x:Name="btnPluginMenu" Content="CT" Width="48" Height="48" Canvas.Left="452" Canvas.Top="263"/>
<Popup Placement="Relative"  HorizontalOffset="-120" VerticalOffset="-130" PlacementTarget="{Binding ElementName=btnPluginMenu}" IsOpen="{Binding ElementName=btnPluginMenu, Path=IsChecked}">

負の値HorizontalOffsetVerticalOffset

于 2013-01-10T22:29:09.083 に答える