欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

WPF---->自定义控件添加Popup弹出框

程序员文章站 2022-06-07 09:57:43
...

自定义控件,当点击自定义控件时弹出提示框

重要属性

属性 名称 解释 使用方法
PlacementTarget 安置目标 Popup附着在那个控件上 PlacementTarget="{Binding ElementName=TextBox1}"
IsOpen 是否显示 是否显示弹出框 IsOpen="{Binding ElementName=TextBox1,Path=IsFocused, Mode=OneWay}"
PopupAnimation 弹出动画 设定弹出效果 PopupAnimation=“Fade”
HorizontalOffset 水平偏移量 与附着控件水平偏移量
VerticalOffset 垂直偏移量 与附着控件的水平偏移量
Placement 弹出位置 设置弹出框相对于主体的位置 Placement=“Top”

普通使用

	<Grid>
        <TextBox x:Name="TextBox1" Grid.Column="1"/>
        <Popup IsOpen="{Binding ElementName=TextBox1,Path=IsFocused, Mode=OneWay}" PlacementTarget="{Binding ElementName=TextBox1}"  Height="70" Width="210" PopupAnimation="Slide" HorizontalOffset="10">
            <Label Content="hahahha" Background="AliceBlue" VerticalAlignment="Center" HorizontalAlignment="Center" Height="70" Width="210"/>
        </Popup>
    </Grid>

自定义控件使用Popup

    <Style x:Key="PopBox" TargetType="{x:Type TextBox}">
        <Setter Property="Template">
            <Setter.Value>
                <ControlTemplate TargetType="TextBox">
                    <Grid>
                        <TextBox x:Name="TextBox1" Height="30" Width="120"/>
                        <Popup IsOpen="{Binding ElementName=TextBox1,Path=IsFocused, Mode=OneWay}" PlacementTarget="{Binding ElementName=TextBox1}" Grid.ColumnSpan="2"  Placement="Bottom" Height="60" Width="180">
                            <Label Height="60" Width=" 180" Background="AliceBlue" Content="{Binding ElementName=TextBox1,Path=Text}"/>
                        </Popup>
                    </Grid>
                </ControlTemplate>
            </Setter.Value>
        </Setter>
    </Style>


相关标签: C# Popup WPF