首页 > 代码库 > WPF 控件之 Popup

WPF 控件之 Popup

1.常用属性说明

IsOpen: 布尔值,指示 Popup 控件是否显示

StaysOpen: 布尔值,指示在 Popup 控件失去焦点的时候,是否关闭 Popup 控件的显示

PopupAnimation:指示显示窗口时是否使用动画,只有在 AllowsTransparency 等于true时此属性才有用

Popup 窗口本身是一个不可见的元素,只有在窗口上放置了信息后才能显示
Popup的定位方式与一般控件的定位方法不一样, Popup 使用五个属性来设定位置信息:

PlacementTarget:设定 Popup 定义所相对的控件,

如果没有为属性为 NULL,则 Popup 定位相对于屏幕的左上角

Placement:一个枚举值,指定 Popup 控件的定位方式

PlacementRectangle:设定一个矩形,在 Popup 控件显示时,位置将相对于此矩形来显示,此矩形的位置也相对于PlacementTarget 属性所设定的控件
HorizontalOffset:指定一个值,指示 Popup 的位置所需水平移动多少个象素

VerticalOffset:指定一个值,指示 Popup 的位置所需垂直移动多少个象素

2.实例

代码:

               <WrapPanel Orientation="Vertical">
                    <Button x:Name="btn1" Click="Button_Click_1" >显示Popup</Button>
                    <Popup x:Name="pop1" Width="120" Height="120"
                           StaysOpen="False" 
                           IsOpen="False" 
                           AllowsTransparency="True"
                           PopupAnimation="Slide"
                           PlacementTarget="{Binding ElementName= btn1}"
                           Placement="Bottom"
                           >
                        <Canvas Background="Green">
                            <Button Canvas.Left="4" Canvas.Top="45">Popup中的button</Button>
                        </Canvas>
                    </Popup>
                </WrapPanel>

效果图: