WPF中的Popup控件
来源:互联网 发布:php 异步消息队列 编辑:程序博客网 时间:2024/05/06 08:47
Popup控件在许多方面和ToolTip 控件一样,尽管它们之间没有继承的关系。和ToolTip一样Popup控件也只能包含单一内容,但是它可以包含任何WPF元素,该内容存储在Popup.Child属性中,而不像ToolTip控件存储在ToolTip.Content属性中。另外,和ToolTip控件一件Popup控件也可以延伸出窗口的边界,最后,可以使用相同的布局属性放置Popup控件,并使用相同的IsOpen属性显示或隐藏Popup控件。
Popup控件和ToolTip控件之间的区别非常重要,这些区别包括:
1.Popup控件永远不会自动显示,为了显示Popup控件必须设置IsOpen属性。
2.默认情况下,Popup.StaysOen属性被设置为True,并且Popup控件会一直显示,直到显式地将IsOpen属性设置为False。如果将Popup.StaysOpen属性设置为False,当用户在其他地方单击鼠标时,Popup控件就会消失。
如果Popup控件的IsOpen属性设置为True时,通过Popup控件的PopupAnimation属性可以设置Popup控件的显示方式。
由于Popup控件不和任何控件相关联,所以无论在哪定义Popup标签都无所谓。
XAML示例代码如下。
<Window x:Class="WpfApplication2.Window1"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="Window1" Height="300" Width="300">
<StackPanel>
<Button Click="Button_Click">
Button
</Button>
<Popup Name="P" AllowsTransparency="True"
PopupAnimation="Fade" Placement="Mouse"><!--定义Popup设置其弹出方式和弹出位置并设置其允许透明-->
<Border Background="Transparent"><!--定义边框-->
<StackPanel>
<Button>1111111</Button>
<Image Source="./Resource/c.png"></Image>
<Button Click="Button_Click_1">2222222</Button>
</StackPanel>
</Border>
</Popup>
</StackPanel>
</Window>
CS示例代码如下。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;
using System.Windows.Controls.Primitives;
namespace WpfApplication2
{
/// <summary>
/// Window1.xaml 的交互逻辑
/// </summary>
public partial class Window1 : Window
{
public Window1()
{
InitializeComponent();
}
private void Button_Click(object sender, RoutedEventArgs e)
{
P.IsOpen = true;
}
private void Button_Click_1(object sender, RoutedEventArgs e)
{
((Popup)(((Border)(((StackPanel)(((Button)sender).Parent)).Parent)).Parent)).IsOpen = false;
e.Handled = true;
}
}
}
- WPF中的Popup控件
- WPF 控件之 Popup
- WPF中使用Popup控件
- wpf Popup控件最大化(全屏)
- 【WPF】使用Popup控件做浮窗/提示框
- wpf POPUP
- WPF中Popup控件更换Child后位置显示不正确
- Asp.net中的Popup控件的使用方法
- WPF中的控件布局
- WPF中的控件布局
- WPF中的控件定位
- [WPF] Popup your control
- WPF Popup 置顶问题
- wpf Popup使用
- WPF Popup的使用
- WPF popup置顶
- WPF Popup实现拖动
- WPF中的ControlTemplate(控件模板)
- Linux下,和时间相关的几个函数
- 01文档属性 鸟哥的linux私房菜
- 有关字符数组的若干问题
- 使用VSS
- JS实现动态添加和删除DIV
- WPF中的Popup控件
- 颜色
- java中finalize终结方法的一些问题
- WPF 登录窗口关闭时打开主窗口
- 程序员不能不懂数据存储
- Yii框架中的提示改成中文
- acc使用注意
- iOS系统安全机制概览
- C语言嵌入正则表达式